@sendbird/uikit-react 3.0.0-beta.6 → 3.0.0-rc.2

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 (600) hide show
  1. package/App.js +47 -46
  2. package/App.js.map +1 -1
  3. package/CHANGELOG.md +107 -0
  4. package/Channel/components/ChannelHeader.js +25 -21
  5. package/Channel/components/ChannelHeader.js.map +1 -1
  6. package/Channel/components/ChannelUI.js +29 -28
  7. package/Channel/components/ChannelUI.js.map +1 -1
  8. package/Channel/components/FileViewer.js +18 -16
  9. package/Channel/components/FileViewer.js.map +1 -1
  10. package/Channel/components/FrozenNotification.js +5 -5
  11. package/Channel/components/Message.js +31 -28
  12. package/Channel/components/Message.js.map +1 -1
  13. package/Channel/components/MessageInput.js +21 -20
  14. package/Channel/components/MessageInput.js.map +1 -1
  15. package/Channel/components/MessageList.js +31 -30
  16. package/Channel/components/MessageList.js.map +1 -1
  17. package/Channel/components/RemoveMessageModal.js +21 -19
  18. package/Channel/components/RemoveMessageModal.js.map +1 -1
  19. package/Channel/components/SuggestedMentionList.js +43 -38
  20. package/Channel/components/SuggestedMentionList.js.map +1 -1
  21. package/Channel/components/TypingIndicator.js +37 -33
  22. package/Channel/components/TypingIndicator.js.map +1 -1
  23. package/Channel/components/UnreadCount.js +6 -6
  24. package/Channel/components/UnreadCount.js.map +1 -1
  25. package/Channel/context.js +16 -14
  26. package/Channel/context.js.map +1 -1
  27. package/Channel.js +29 -28
  28. package/Channel.js.map +1 -1
  29. package/ChannelList/components/AddChannel.js +17 -17
  30. package/ChannelList/components/ChannelListHeader.js +8 -8
  31. package/ChannelList/components/ChannelListUI.js +44 -45
  32. package/ChannelList/components/ChannelListUI.js.map +1 -1
  33. package/ChannelList/components/ChannelPreview.js +36 -32
  34. package/ChannelList/components/ChannelPreview.js.map +1 -1
  35. package/ChannelList/components/ChannelPreviewAction.js +18 -16
  36. package/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  37. package/ChannelList/context.js +11 -9
  38. package/ChannelList/context.js.map +1 -1
  39. package/ChannelList.js +31 -29
  40. package/ChannelList.js.map +1 -1
  41. package/{ChannelListProvider-737ee36f.js → ChannelListProvider-fec439b3.js} +219 -198
  42. package/ChannelListProvider-fec439b3.js.map +1 -0
  43. package/{ChannelProvider-34834493.js → ChannelProvider-1f56082e.js} +380 -419
  44. package/ChannelProvider-1f56082e.js.map +1 -0
  45. package/ChannelSettings/components/ChannelProfile.js +17 -17
  46. package/ChannelSettings/components/ChannelProfile.js.map +1 -1
  47. package/ChannelSettings/components/ChannelSettingsUI.js +24 -24
  48. package/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  49. package/ChannelSettings/components/EditDetailsModal.js +23 -19
  50. package/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  51. package/ChannelSettings/components/LeaveChannel.js +14 -14
  52. package/ChannelSettings/components/LeaveChannel.js.map +1 -1
  53. package/ChannelSettings/components/{AdminPanel.js → ModerationPanel.js} +88 -142
  54. package/ChannelSettings/components/ModerationPanel.js.map +1 -0
  55. package/ChannelSettings/components/UserListItem.js +19 -18
  56. package/ChannelSettings/components/UserListItem.js.map +1 -1
  57. package/ChannelSettings/components/UserPanel.js +20 -20
  58. package/ChannelSettings/components/UserPanel.js.map +1 -1
  59. package/ChannelSettings/context.js +11 -11
  60. package/ChannelSettings/context.js.map +1 -1
  61. package/ChannelSettings.js +21 -21
  62. package/CreateChannel/components/CreateChannelUI.js +18 -18
  63. package/CreateChannel/components/CreateChannelUI.js.map +1 -1
  64. package/CreateChannel/components/{InviteMembers.js → InviteUsers.js} +24 -28
  65. package/CreateChannel/components/InviteUsers.js.map +1 -0
  66. package/CreateChannel/components/SelectChannelType.js +13 -13
  67. package/CreateChannel/components/SelectChannelType.js.map +1 -1
  68. package/CreateChannel/context.js +6 -5
  69. package/CreateChannel/context.js.map +1 -1
  70. package/CreateChannel.js +17 -17
  71. package/{CreateChannelProvider-3d3e4a7c.js → CreateChannelProvider-2746c280.js} +3 -3
  72. package/CreateChannelProvider-2746c280.js.map +1 -0
  73. package/EditUserProfile/components/EditUserProfileUI.js +14 -14
  74. package/EditUserProfile/context.js +2 -2
  75. package/EditUserProfile/context.js.map +1 -1
  76. package/EditUserProfile.js +14 -14
  77. package/LICENSE +21 -0
  78. package/{LocalizationContext-5b0a9339.js → LocalizationContext-3dbcc9d8.js} +3 -3
  79. package/{LocalizationContext-5b0a9339.js.map → LocalizationContext-3dbcc9d8.js.map} +1 -1
  80. package/{MemberList-6e33a562.js → MemberList-f1c78686.js} +47 -68
  81. package/MemberList-f1c78686.js.map +1 -0
  82. package/MessageSearch/components/MessageSearchUI.js +16 -16
  83. package/MessageSearch/components/MessageSearchUI.js.map +1 -1
  84. package/MessageSearch/context.js +56 -61
  85. package/MessageSearch/context.js.map +1 -1
  86. package/MessageSearch.js +22 -22
  87. package/MessageSearch.js.map +1 -1
  88. package/OpenChannel/components/FrozenChannelNotification.js +5 -5
  89. package/OpenChannel/components/OpenChannelHeader.js +17 -15
  90. package/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  91. package/OpenChannel/components/OpenChannelInput.js +20 -19
  92. package/OpenChannel/components/OpenChannelInput.js.map +1 -1
  93. package/OpenChannel/components/OpenChannelMessage.js +44 -40
  94. package/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  95. package/OpenChannel/components/OpenChannelMessageList.js +38 -38
  96. package/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  97. package/OpenChannel/components/OpenChannelUI.js +28 -27
  98. package/OpenChannel/components/OpenChannelUI.js.map +1 -1
  99. package/OpenChannel/context.js +12 -10
  100. package/OpenChannel/context.js.map +1 -1
  101. package/OpenChannel.js +28 -27
  102. package/OpenChannel.js.map +1 -1
  103. package/{OpenChannelProvider-9ef0d52a.js → OpenChannelProvider-5ecafbb1.js} +629 -694
  104. package/OpenChannelProvider-5ecafbb1.js.map +1 -0
  105. package/OpenChannelSettings/components/EditDetailsModal.js +30 -36
  106. package/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  107. package/OpenChannelSettings/components/OpenChannelProfile.js +16 -16
  108. package/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  109. package/OpenChannelSettings/components/OpenChannelSettingsUI.js +39 -23
  110. package/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  111. package/OpenChannelSettings/components/OperatorUI.js +46 -31
  112. package/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  113. package/OpenChannelSettings/components/ParticipantUI.js +30 -57
  114. package/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  115. package/OpenChannelSettings/context.js +16 -16
  116. package/OpenChannelSettings/context.js.map +1 -1
  117. package/OpenChannelSettings.js +19 -19
  118. package/README.md +128 -0
  119. package/SendbirdProvider.js +43 -38
  120. package/SendbirdProvider.js.map +1 -1
  121. package/{UserProfileContext-b6d89d0d.js → UserProfileContext-f0ef00c0.js} +1 -1
  122. package/{UserProfileContext-b6d89d0d.js.map → UserProfileContext-f0ef00c0.js.map} +1 -1
  123. package/__bundle-7dfccc8c-c503198e.js +24 -0
  124. package/__bundle-7dfccc8c-c503198e.js.map +1 -0
  125. package/{_rollupPluginBabelHelpers-d10f91b9.js → _rollupPluginBabelHelpers-8ba74698.js} +1 -1
  126. package/{_rollupPluginBabelHelpers-d10f91b9.js.map → _rollupPluginBabelHelpers-8ba74698.js.map} +1 -1
  127. package/{actionTypes-17920f59.js → actionTypes-1444365b.js} +1 -1
  128. package/{actionTypes-17920f59.js.map → actionTypes-1444365b.js.map} +1 -1
  129. package/cjs/App.js +47 -46
  130. package/cjs/App.js.map +1 -1
  131. package/cjs/Channel/components/ChannelHeader.js +25 -21
  132. package/cjs/Channel/components/ChannelHeader.js.map +1 -1
  133. package/cjs/Channel/components/ChannelUI.js +29 -28
  134. package/cjs/Channel/components/ChannelUI.js.map +1 -1
  135. package/cjs/Channel/components/FileViewer.js +18 -16
  136. package/cjs/Channel/components/FileViewer.js.map +1 -1
  137. package/cjs/Channel/components/FrozenNotification.js +5 -5
  138. package/cjs/Channel/components/Message.js +31 -28
  139. package/cjs/Channel/components/Message.js.map +1 -1
  140. package/cjs/Channel/components/MessageInput.js +21 -20
  141. package/cjs/Channel/components/MessageInput.js.map +1 -1
  142. package/cjs/Channel/components/MessageList.js +31 -30
  143. package/cjs/Channel/components/MessageList.js.map +1 -1
  144. package/cjs/Channel/components/RemoveMessageModal.js +21 -19
  145. package/cjs/Channel/components/RemoveMessageModal.js.map +1 -1
  146. package/cjs/Channel/components/SuggestedMentionList.js +43 -38
  147. package/cjs/Channel/components/SuggestedMentionList.js.map +1 -1
  148. package/cjs/Channel/components/TypingIndicator.js +37 -33
  149. package/cjs/Channel/components/TypingIndicator.js.map +1 -1
  150. package/cjs/Channel/components/UnreadCount.js +6 -6
  151. package/cjs/Channel/components/UnreadCount.js.map +1 -1
  152. package/cjs/Channel/context.js +17 -15
  153. package/cjs/Channel/context.js.map +1 -1
  154. package/cjs/Channel.js +29 -28
  155. package/cjs/Channel.js.map +1 -1
  156. package/cjs/ChannelList/components/AddChannel.js +17 -17
  157. package/cjs/ChannelList/components/ChannelListHeader.js +8 -8
  158. package/cjs/ChannelList/components/ChannelListUI.js +44 -45
  159. package/cjs/ChannelList/components/ChannelListUI.js.map +1 -1
  160. package/cjs/ChannelList/components/ChannelPreview.js +36 -32
  161. package/cjs/ChannelList/components/ChannelPreview.js.map +1 -1
  162. package/cjs/ChannelList/components/ChannelPreviewAction.js +18 -16
  163. package/cjs/ChannelList/components/ChannelPreviewAction.js.map +1 -1
  164. package/cjs/ChannelList/context.js +11 -10
  165. package/cjs/ChannelList/context.js.map +1 -1
  166. package/cjs/ChannelList.js +31 -29
  167. package/cjs/ChannelList.js.map +1 -1
  168. package/cjs/{ChannelListProvider-f910e236.js → ChannelListProvider-94d4c78c.js} +218 -198
  169. package/cjs/ChannelListProvider-94d4c78c.js.map +1 -0
  170. package/cjs/{ChannelProvider-86e2e68c.js → ChannelProvider-190bd453.js} +380 -419
  171. package/cjs/ChannelProvider-190bd453.js.map +1 -0
  172. package/cjs/ChannelSettings/components/ChannelProfile.js +16 -16
  173. package/cjs/ChannelSettings/components/ChannelProfile.js.map +1 -1
  174. package/cjs/ChannelSettings/components/ChannelSettingsUI.js +23 -23
  175. package/cjs/ChannelSettings/components/ChannelSettingsUI.js.map +1 -1
  176. package/cjs/ChannelSettings/components/EditDetailsModal.js +22 -18
  177. package/cjs/ChannelSettings/components/EditDetailsModal.js.map +1 -1
  178. package/cjs/ChannelSettings/components/LeaveChannel.js +13 -13
  179. package/cjs/ChannelSettings/components/LeaveChannel.js.map +1 -1
  180. package/cjs/ChannelSettings/components/{AdminPanel.js → ModerationPanel.js} +87 -141
  181. package/cjs/ChannelSettings/components/ModerationPanel.js.map +1 -0
  182. package/cjs/ChannelSettings/components/UserListItem.js +19 -18
  183. package/cjs/ChannelSettings/components/UserListItem.js.map +1 -1
  184. package/cjs/ChannelSettings/components/UserPanel.js +19 -19
  185. package/cjs/ChannelSettings/components/UserPanel.js.map +1 -1
  186. package/cjs/ChannelSettings/context.js +11 -11
  187. package/cjs/ChannelSettings/context.js.map +1 -1
  188. package/cjs/ChannelSettings.js +21 -21
  189. package/cjs/CreateChannel/components/CreateChannelUI.js +18 -18
  190. package/cjs/CreateChannel/components/CreateChannelUI.js.map +1 -1
  191. package/cjs/CreateChannel/components/{InviteMembers.js → InviteUsers.js} +24 -28
  192. package/cjs/CreateChannel/components/InviteUsers.js.map +1 -0
  193. package/cjs/CreateChannel/components/SelectChannelType.js +13 -13
  194. package/cjs/CreateChannel/components/SelectChannelType.js.map +1 -1
  195. package/cjs/CreateChannel/context.js +6 -5
  196. package/cjs/CreateChannel/context.js.map +1 -1
  197. package/cjs/CreateChannel.js +17 -17
  198. package/cjs/{CreateChannelProvider-07992a6d.js → CreateChannelProvider-9fa1d794.js} +3 -3
  199. package/cjs/CreateChannelProvider-9fa1d794.js.map +1 -0
  200. package/cjs/EditUserProfile/components/EditUserProfileUI.js +14 -14
  201. package/cjs/EditUserProfile/context.js +2 -2
  202. package/cjs/EditUserProfile/context.js.map +1 -1
  203. package/cjs/EditUserProfile.js +14 -14
  204. package/cjs/{LocalizationContext-79514649.js → LocalizationContext-65b97b58.js} +3 -3
  205. package/cjs/{LocalizationContext-79514649.js.map → LocalizationContext-65b97b58.js.map} +1 -1
  206. package/cjs/{MemberList-015c1075.js → MemberList-3e3448b2.js} +46 -67
  207. package/cjs/MemberList-3e3448b2.js.map +1 -0
  208. package/cjs/MessageSearch/components/MessageSearchUI.js +15 -15
  209. package/cjs/MessageSearch/components/MessageSearchUI.js.map +1 -1
  210. package/cjs/MessageSearch/context.js +56 -61
  211. package/cjs/MessageSearch/context.js.map +1 -1
  212. package/cjs/MessageSearch.js +22 -22
  213. package/cjs/MessageSearch.js.map +1 -1
  214. package/cjs/OpenChannel/components/FrozenChannelNotification.js +5 -5
  215. package/cjs/OpenChannel/components/OpenChannelHeader.js +17 -15
  216. package/cjs/OpenChannel/components/OpenChannelHeader.js.map +1 -1
  217. package/cjs/OpenChannel/components/OpenChannelInput.js +20 -19
  218. package/cjs/OpenChannel/components/OpenChannelInput.js.map +1 -1
  219. package/cjs/OpenChannel/components/OpenChannelMessage.js +44 -40
  220. package/cjs/OpenChannel/components/OpenChannelMessage.js.map +1 -1
  221. package/cjs/OpenChannel/components/OpenChannelMessageList.js +38 -38
  222. package/cjs/OpenChannel/components/OpenChannelMessageList.js.map +1 -1
  223. package/cjs/OpenChannel/components/OpenChannelUI.js +28 -27
  224. package/cjs/OpenChannel/components/OpenChannelUI.js.map +1 -1
  225. package/cjs/OpenChannel/context.js +13 -11
  226. package/cjs/OpenChannel/context.js.map +1 -1
  227. package/cjs/OpenChannel.js +28 -27
  228. package/cjs/OpenChannel.js.map +1 -1
  229. package/cjs/{OpenChannelProvider-445f214c.js → OpenChannelProvider-5c81bdb4.js} +629 -694
  230. package/cjs/OpenChannelProvider-5c81bdb4.js.map +1 -0
  231. package/cjs/OpenChannelSettings/components/EditDetailsModal.js +29 -35
  232. package/cjs/OpenChannelSettings/components/EditDetailsModal.js.map +1 -1
  233. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js +15 -15
  234. package/cjs/OpenChannelSettings/components/OpenChannelProfile.js.map +1 -1
  235. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js +38 -22
  236. package/cjs/OpenChannelSettings/components/OpenChannelSettingsUI.js.map +1 -1
  237. package/cjs/OpenChannelSettings/components/OperatorUI.js +43 -28
  238. package/cjs/OpenChannelSettings/components/OperatorUI.js.map +1 -1
  239. package/cjs/OpenChannelSettings/components/ParticipantUI.js +29 -56
  240. package/cjs/OpenChannelSettings/components/ParticipantUI.js.map +1 -1
  241. package/cjs/OpenChannelSettings/context.js +16 -16
  242. package/cjs/OpenChannelSettings/context.js.map +1 -1
  243. package/cjs/OpenChannelSettings.js +19 -19
  244. package/cjs/SendbirdProvider.js +44 -40
  245. package/cjs/SendbirdProvider.js.map +1 -1
  246. package/cjs/{UserProfileContext-12cfee31.js → UserProfileContext-9f3727c8.js} +1 -1
  247. package/cjs/{UserProfileContext-12cfee31.js.map → UserProfileContext-9f3727c8.js.map} +1 -1
  248. package/cjs/__bundle-7dfccc8c-d9262ff8.js +151 -0
  249. package/cjs/__bundle-7dfccc8c-d9262ff8.js.map +1 -0
  250. package/cjs/{_rollupPluginBabelHelpers-f802e0e8.js → _rollupPluginBabelHelpers-0d29c748.js} +1 -1
  251. package/cjs/{_rollupPluginBabelHelpers-f802e0e8.js.map → _rollupPluginBabelHelpers-0d29c748.js.map} +1 -1
  252. package/cjs/{actionTypes-93161807.js → actionTypes-5dc3015b.js} +1 -1
  253. package/cjs/{actionTypes-93161807.js.map → actionTypes-5dc3015b.js.map} +1 -1
  254. package/cjs/{color-c53ac792.js → color-51e4fff0.js} +1 -1
  255. package/cjs/{color-c53ac792.js.map → color-51e4fff0.js.map} +1 -1
  256. package/cjs/{compareIds-37e8380c.js → compareIds-7f5ab4de.js} +1 -1
  257. package/cjs/{compareIds-37e8380c.js.map → compareIds-7f5ab4de.js.map} +1 -1
  258. package/cjs/{const-3024c719.js → const-63ed85a4.js} +1 -1
  259. package/cjs/{const-3024c719.js.map → const-63ed85a4.js.map} +1 -1
  260. package/cjs/{const-489c46b6.js → const-ffda0b97.js} +1 -1
  261. package/cjs/{const-489c46b6.js.map → const-ffda0b97.js.map} +1 -1
  262. package/cjs/{context-961d5b11.js → context-0aa8e3f8.js} +2 -2
  263. package/cjs/{context-961d5b11.js.map → context-0aa8e3f8.js.map} +1 -1
  264. package/cjs/dist/index.css +169 -47
  265. package/cjs/dist/index.css.map +1 -1
  266. package/cjs/groupChannel-8023bd09.js +9 -0
  267. package/cjs/groupChannel-8023bd09.js.map +1 -0
  268. package/cjs/{index-07623c8b.js → index-119a7a34.js} +2 -2
  269. package/cjs/{index-07623c8b.js.map → index-119a7a34.js.map} +1 -1
  270. package/cjs/{index-5eaebc66.js → index-22c82558.js} +12 -9
  271. package/cjs/index-22c82558.js.map +1 -0
  272. package/cjs/{index-bc563d47.js → index-32f8310c.js} +32 -29
  273. package/cjs/index-32f8310c.js.map +1 -0
  274. package/cjs/{index-cb53adf5.js → index-481324b7.js} +2 -2
  275. package/cjs/{index-cb53adf5.js.map → index-481324b7.js.map} +1 -1
  276. package/cjs/{index-a20b40c4.js → index-574ef41e.js} +5 -5
  277. package/cjs/index-574ef41e.js.map +1 -0
  278. package/cjs/{index-2180f74f.js → index-7ef68704.js} +5 -5
  279. package/cjs/index-7ef68704.js.map +1 -0
  280. package/cjs/{index-d70ac86e.js → index-97c28907.js} +1 -1
  281. package/cjs/{index-d70ac86e.js.map → index-97c28907.js.map} +1 -1
  282. package/cjs/{index-5615eab4.js → index-a372cc51.js} +4 -4
  283. package/cjs/{index-5615eab4.js.map → index-a372cc51.js.map} +1 -1
  284. package/cjs/{index-d25a7cbf.js → index-a66b1af1.js} +4 -4
  285. package/cjs/{index-d25a7cbf.js.map → index-a66b1af1.js.map} +1 -1
  286. package/cjs/{index-0b2e2c2a.js → index-bf350acc.js} +1 -1
  287. package/cjs/{index-0b2e2c2a.js.map → index-bf350acc.js.map} +1 -1
  288. package/cjs/index.js +42 -41
  289. package/cjs/index.js.map +1 -1
  290. package/cjs/openChannel-146282ad.js +13 -0
  291. package/cjs/openChannel-146282ad.js.map +1 -0
  292. package/cjs/{openChannelUtils-7fb1abc6.js → openChannelUtils-6a8fb5bf.js} +10 -5
  293. package/cjs/openChannelUtils-6a8fb5bf.js.map +1 -0
  294. package/cjs/sendbirdSelectors.js +696 -0
  295. package/cjs/sendbirdSelectors.js.map +1 -0
  296. package/cjs/{stringSet-ae448472.js → stringSet-da976cc5.js} +1 -1
  297. package/cjs/{stringSet-ae448472.js.map → stringSet-da976cc5.js.map} +1 -1
  298. package/cjs/{topics-bdbff23e.js → topics-a595e22a.js} +1 -1
  299. package/cjs/{topics-bdbff23e.js.map → topics-a595e22a.js.map} +1 -1
  300. package/cjs/{tslib.es6-a7af7bb8.js → tslib.es6-4b76ba01.js} +1 -1
  301. package/cjs/{tslib.es6-a7af7bb8.js.map → tslib.es6-4b76ba01.js.map} +1 -1
  302. package/cjs/ui/Accordion.js +4 -4
  303. package/cjs/ui/AccordionGroup.js +2 -2
  304. package/cjs/ui/AccordionGroup.js.map +1 -1
  305. package/cjs/ui/AdminMessage.js +4 -3
  306. package/cjs/ui/AdminMessage.js.map +1 -1
  307. package/cjs/ui/Avatar.js +3 -3
  308. package/cjs/ui/Badge.js +5 -5
  309. package/cjs/ui/Button.js +4 -4
  310. package/cjs/ui/ChannelAvatar.js +8 -8
  311. package/cjs/ui/ChannelAvatar.js.map +1 -1
  312. package/cjs/ui/ChannelPreview.js +28 -21
  313. package/cjs/ui/ChannelPreview.js.map +1 -1
  314. package/cjs/ui/ChatHeader.js +19 -12
  315. package/cjs/ui/ChatHeader.js.map +1 -1
  316. package/cjs/ui/Checkbox.js +1 -1
  317. package/cjs/ui/ConnectionStatus.js +5 -5
  318. package/cjs/ui/ContextMenu.js +9 -30
  319. package/cjs/ui/ContextMenu.js.map +1 -1
  320. package/cjs/ui/DateSeparator.js +5 -5
  321. package/cjs/ui/DateSeparator.js.map +1 -1
  322. package/cjs/ui/Dropdown.js +3 -3
  323. package/cjs/ui/EmojiReactions.js +10 -10
  324. package/cjs/ui/EmojiReactions.js.map +1 -1
  325. package/cjs/ui/FileMessageItemBody.js +6 -6
  326. package/cjs/ui/FileMessageItemBody.js.map +1 -1
  327. package/cjs/ui/FileViewer.js +7 -7
  328. package/cjs/ui/Icon.js +5 -1
  329. package/cjs/ui/Icon.js.map +1 -1
  330. package/cjs/ui/IconButton.js +1 -1
  331. package/cjs/ui/ImageRenderer.js +1 -1
  332. package/cjs/ui/Input.js +3 -3
  333. package/cjs/ui/Label.js +3 -3
  334. package/cjs/ui/LinkLabel.js +3 -3
  335. package/cjs/ui/Loader.js +1 -1
  336. package/cjs/ui/MentionLabel.js +20 -18
  337. package/cjs/ui/MentionLabel.js.map +1 -1
  338. package/cjs/ui/MentionUserLabel.js +1 -1
  339. package/cjs/ui/MentionUserLabel.js.map +1 -1
  340. package/cjs/ui/MessageContent.js +53 -48
  341. package/cjs/ui/MessageContent.js.map +1 -1
  342. package/cjs/ui/MessageInput.js +5341 -14
  343. package/cjs/ui/MessageInput.js.map +1 -1
  344. package/cjs/ui/MessageItemMenu.js +14 -18
  345. package/cjs/ui/MessageItemMenu.js.map +1 -1
  346. package/cjs/ui/MessageItemReactionMenu.js +5 -5
  347. package/cjs/ui/MessageItemReactionMenu.js.map +1 -1
  348. package/cjs/ui/MessageSearchFileItem.js +12 -11
  349. package/cjs/ui/MessageSearchFileItem.js.map +1 -1
  350. package/cjs/ui/MessageSearchItem.js +10 -10
  351. package/cjs/ui/MessageSearchItem.js.map +1 -1
  352. package/cjs/ui/MessageStatus.js +11 -11
  353. package/cjs/ui/MessageStatus.js.map +1 -1
  354. package/cjs/ui/Modal.js +8 -8
  355. package/cjs/ui/MutedAvatarOverlay.js +7 -7
  356. package/cjs/ui/MutedAvatarOverlay.js.map +1 -1
  357. package/cjs/ui/OGMessageItemBody.js +18 -17
  358. package/cjs/ui/OGMessageItemBody.js.map +1 -1
  359. package/cjs/ui/OpenChannelAdminMessage.js +4 -4
  360. package/cjs/ui/OpenChannelAdminMessage.js.map +1 -1
  361. package/cjs/ui/OpenChannelAvatar.js +11 -11
  362. package/cjs/ui/OpenChannelAvatar.js.map +1 -1
  363. package/cjs/ui/OpenchannelConversationHeader.js +7 -7
  364. package/cjs/ui/OpenchannelFileMessage.js +17 -16
  365. package/cjs/ui/OpenchannelFileMessage.js.map +1 -1
  366. package/cjs/ui/OpenchannelOGMessage.js +17 -16
  367. package/cjs/ui/OpenchannelOGMessage.js.map +1 -1
  368. package/cjs/ui/OpenchannelThumbnailMessage.js +18 -17
  369. package/cjs/ui/OpenchannelThumbnailMessage.js.map +1 -1
  370. package/cjs/ui/OpenchannelUserMessage.js +18 -17
  371. package/cjs/ui/OpenchannelUserMessage.js.map +1 -1
  372. package/cjs/ui/PlaceHolder.js +6 -6
  373. package/cjs/ui/QuoteMessage.js +24 -24
  374. package/cjs/ui/QuoteMessage.js.map +1 -1
  375. package/cjs/ui/QuoteMessageInput.js +11 -13
  376. package/cjs/ui/QuoteMessageInput.js.map +1 -1
  377. package/cjs/ui/ReactionBadge.js +3 -3
  378. package/cjs/ui/ReactionButton.js +1 -1
  379. package/cjs/ui/SortByRow.js +1 -1
  380. package/cjs/ui/TextButton.js +2 -2
  381. package/cjs/ui/TextMessageItemBody.js +17 -16
  382. package/cjs/ui/TextMessageItemBody.js.map +1 -1
  383. package/cjs/ui/ThumbnailMessageItemBody.js +3 -3
  384. package/cjs/ui/ThumbnailMessageItemBody.js.map +1 -1
  385. package/cjs/ui/Tooltip.js +3 -3
  386. package/cjs/ui/TooltipWrapper.js +1 -1
  387. package/cjs/ui/UnknownMessageItemBody.js +7 -7
  388. package/cjs/ui/UnknownMessageItemBody.js.map +1 -1
  389. package/cjs/ui/UserListItem.js +14 -13
  390. package/cjs/ui/UserListItem.js.map +1 -1
  391. package/cjs/ui/UserProfile.js +19 -18
  392. package/cjs/ui/UserProfile.js.map +1 -1
  393. package/cjs/{index-4e8b61f7.js → ui/Word.js} +31 -10
  394. package/cjs/ui/Word.js.map +1 -0
  395. package/cjs/useSendbirdStateContext.js +3 -3
  396. package/cjs/useSendbirdStateContext.js.map +1 -1
  397. package/cjs/{utils-03155980.js → utils-4d87243e.js} +8 -8
  398. package/cjs/utils-4d87243e.js.map +1 -0
  399. package/cjs/{utils-0d5ecf05.js → utils-52a504d9.js} +1 -1
  400. package/cjs/{utils-0d5ecf05.js.map → utils-52a504d9.js.map} +1 -1
  401. package/cjs/{utils-139469a5.js → utils-f0f90fdf.js} +1 -1
  402. package/cjs/{utils-139469a5.js.map → utils-f0f90fdf.js.map} +1 -1
  403. package/cjs/{uuid-03009a31.js → uuid-d0e513e8.js} +1 -1
  404. package/cjs/{uuid-03009a31.js.map → uuid-d0e513e8.js.map} +1 -1
  405. package/cjs/{withSendBird.js → withSendbird.js} +2 -2
  406. package/cjs/{withSendBird.js.map → withSendbird.js.map} +1 -1
  407. package/{color-6b259e40.js → color-b580a421.js} +1 -1
  408. package/{color-6b259e40.js.map → color-b580a421.js.map} +1 -1
  409. package/{compareIds-982972e8.js → compareIds-1114d2b7.js} +1 -1
  410. package/{compareIds-982972e8.js.map → compareIds-1114d2b7.js.map} +1 -1
  411. package/{const-e3d1e0ec.js → const-a11ccf78.js} +1 -1
  412. package/{const-e3d1e0ec.js.map → const-a11ccf78.js.map} +1 -1
  413. package/{const-da3968a5.js → const-b72fa505.js} +1 -1
  414. package/{const-da3968a5.js.map → const-b72fa505.js.map} +1 -1
  415. package/{context-3d5505d0.js → context-d867aec7.js} +2 -2
  416. package/{context-3d5505d0.js.map → context-d867aec7.js.map} +1 -1
  417. package/dist/index.css +169 -47
  418. package/dist/index.css.map +1 -1
  419. package/groupChannel-9a1eb726.js +6 -0
  420. package/groupChannel-9a1eb726.js.map +1 -0
  421. package/{index-94489c17.js → index-21a0df21.js} +1 -1
  422. package/{index-94489c17.js.map → index-21a0df21.js.map} +1 -1
  423. package/{index-db6a4860.js → index-3ea848a1.js} +1 -1
  424. package/{index-db6a4860.js.map → index-3ea848a1.js.map} +1 -1
  425. package/{index-902c2068.js → index-4c5351e9.js} +33 -30
  426. package/index-4c5351e9.js.map +1 -0
  427. package/{index-92160328.js → index-5ba00ba3.js} +2 -2
  428. package/{index-92160328.js.map → index-5ba00ba3.js.map} +1 -1
  429. package/{index-691dc8da.js → index-64bb5b19.js} +4 -4
  430. package/{index-691dc8da.js.map → index-64bb5b19.js.map} +1 -1
  431. package/{index-9deb1389.js → index-905615b2.js} +5 -5
  432. package/index-905615b2.js.map +1 -0
  433. package/{index-95677caf.js → index-93e3dce0.js} +2 -2
  434. package/{index-95677caf.js.map → index-93e3dce0.js.map} +1 -1
  435. package/{index-065ef420.js → index-9c121a8c.js} +12 -9
  436. package/index-9c121a8c.js.map +1 -0
  437. package/{index-17cf7808.js → index-d1179659.js} +5 -5
  438. package/index-d1179659.js.map +1 -0
  439. package/{index-a755675d.js → index-eebcc3d0.js} +4 -4
  440. package/{index-a755675d.js.map → index-eebcc3d0.js.map} +1 -1
  441. package/index.d.ts +1026 -902
  442. package/index.d.ts____ +1883 -0
  443. package/index.js +40 -39
  444. package/index.js.map +1 -1
  445. package/openChannel-f429ff22.js +8 -0
  446. package/openChannel-f429ff22.js.map +1 -0
  447. package/{openChannelUtils-2cd370a7.js → openChannelUtils-a232a39f.js} +10 -5
  448. package/openChannelUtils-a232a39f.js.map +1 -0
  449. package/package-lock.json +26318 -0
  450. package/package.json +5 -5
  451. package/sendbirdSelectors.js +671 -0
  452. package/sendbirdSelectors.js.map +1 -0
  453. package/{stringSet-5a85ff4b.js → stringSet-3a2b916e.js} +1 -1
  454. package/{stringSet-5a85ff4b.js.map → stringSet-3a2b916e.js.map} +1 -1
  455. package/{topics-24a660ee.js → topics-19b96cc7.js} +2 -2
  456. package/{topics-24a660ee.js.map → topics-19b96cc7.js.map} +1 -1
  457. package/{tslib.es6-2c4d01e9.js → tslib.es6-9548150b.js} +1 -1
  458. package/{tslib.es6-2c4d01e9.js.map → tslib.es6-9548150b.js.map} +1 -1
  459. package/ui/Accordion.js +4 -4
  460. package/ui/AccordionGroup.js +2 -2
  461. package/ui/AccordionGroup.js.map +1 -1
  462. package/ui/AdminMessage.js +4 -3
  463. package/ui/AdminMessage.js.map +1 -1
  464. package/ui/Avatar.js +3 -3
  465. package/ui/Badge.js +5 -5
  466. package/ui/Button.js +4 -4
  467. package/ui/ChannelAvatar.js +8 -8
  468. package/ui/ChannelAvatar.js.map +1 -1
  469. package/ui/ChannelPreview.js +28 -21
  470. package/ui/ChannelPreview.js.map +1 -1
  471. package/ui/ChatHeader.js +19 -12
  472. package/ui/ChatHeader.js.map +1 -1
  473. package/ui/Checkbox.js +1 -1
  474. package/ui/ConnectionStatus.js +5 -5
  475. package/ui/ContextMenu.js +9 -30
  476. package/ui/ContextMenu.js.map +1 -1
  477. package/ui/DateSeparator.js +5 -5
  478. package/ui/DateSeparator.js.map +1 -1
  479. package/ui/Dropdown.js +3 -3
  480. package/ui/EmojiReactions.js +10 -10
  481. package/ui/EmojiReactions.js.map +1 -1
  482. package/ui/FileMessageItemBody.js +6 -6
  483. package/ui/FileMessageItemBody.js.map +1 -1
  484. package/ui/FileViewer.js +7 -7
  485. package/ui/Icon.js +5 -1
  486. package/ui/Icon.js.map +1 -1
  487. package/ui/IconButton.js +1 -1
  488. package/ui/ImageRenderer.js +1 -1
  489. package/ui/Input.js +3 -3
  490. package/ui/Label.js +3 -3
  491. package/ui/LinkLabel.js +3 -3
  492. package/ui/Loader.js +1 -1
  493. package/ui/MentionLabel.js +20 -18
  494. package/ui/MentionLabel.js.map +1 -1
  495. package/ui/MentionUserLabel.js +1 -1
  496. package/ui/MentionUserLabel.js.map +1 -1
  497. package/ui/MessageContent.js +55 -50
  498. package/ui/MessageContent.js.map +1 -1
  499. package/ui/MessageInput.js +5339 -11
  500. package/ui/MessageInput.js.map +1 -1
  501. package/ui/MessageItemMenu.js +14 -18
  502. package/ui/MessageItemMenu.js.map +1 -1
  503. package/ui/MessageItemReactionMenu.js +5 -5
  504. package/ui/MessageItemReactionMenu.js.map +1 -1
  505. package/ui/MessageSearchFileItem.js +12 -11
  506. package/ui/MessageSearchFileItem.js.map +1 -1
  507. package/ui/MessageSearchItem.js +10 -10
  508. package/ui/MessageSearchItem.js.map +1 -1
  509. package/ui/MessageStatus.js +11 -11
  510. package/ui/MessageStatus.js.map +1 -1
  511. package/ui/Modal.js +8 -8
  512. package/ui/MutedAvatarOverlay.js +7 -7
  513. package/ui/MutedAvatarOverlay.js.map +1 -1
  514. package/ui/OGMessageItemBody.js +16 -15
  515. package/ui/OGMessageItemBody.js.map +1 -1
  516. package/ui/OpenChannelAdminMessage.js +4 -4
  517. package/ui/OpenChannelAdminMessage.js.map +1 -1
  518. package/ui/OpenChannelAvatar.js +11 -11
  519. package/ui/OpenChannelAvatar.js.map +1 -1
  520. package/ui/OpenchannelConversationHeader.js +7 -7
  521. package/ui/OpenchannelFileMessage.js +17 -16
  522. package/ui/OpenchannelFileMessage.js.map +1 -1
  523. package/ui/OpenchannelOGMessage.js +17 -16
  524. package/ui/OpenchannelOGMessage.js.map +1 -1
  525. package/ui/OpenchannelThumbnailMessage.js +18 -17
  526. package/ui/OpenchannelThumbnailMessage.js.map +1 -1
  527. package/ui/OpenchannelUserMessage.js +18 -17
  528. package/ui/OpenchannelUserMessage.js.map +1 -1
  529. package/ui/PlaceHolder.js +6 -6
  530. package/ui/QuoteMessage.js +24 -24
  531. package/ui/QuoteMessage.js.map +1 -1
  532. package/ui/QuoteMessageInput.js +11 -13
  533. package/ui/QuoteMessageInput.js.map +1 -1
  534. package/ui/ReactionBadge.js +3 -3
  535. package/ui/ReactionButton.js +1 -1
  536. package/ui/SortByRow.js +1 -1
  537. package/ui/TextButton.js +2 -2
  538. package/ui/TextMessageItemBody.js +16 -15
  539. package/ui/TextMessageItemBody.js.map +1 -1
  540. package/ui/ThumbnailMessageItemBody.js +3 -3
  541. package/ui/ThumbnailMessageItemBody.js.map +1 -1
  542. package/ui/Tooltip.js +3 -3
  543. package/ui/TooltipWrapper.js +1 -1
  544. package/ui/UnknownMessageItemBody.js +7 -7
  545. package/ui/UnknownMessageItemBody.js.map +1 -1
  546. package/ui/UserListItem.js +14 -13
  547. package/ui/UserListItem.js.map +1 -1
  548. package/ui/UserProfile.js +17 -16
  549. package/ui/UserProfile.js.map +1 -1
  550. package/ui/Word.js +70 -0
  551. package/ui/Word.js.map +1 -0
  552. package/useSendbirdStateContext.js +2 -2
  553. package/useSendbirdStateContext.js.map +1 -1
  554. package/{utils-b3b6f503.js → utils-29691dff.js} +8 -8
  555. package/utils-29691dff.js.map +1 -0
  556. package/{utils-57c79308.js → utils-8222d5cb.js} +1 -1
  557. package/{utils-57c79308.js.map → utils-8222d5cb.js.map} +1 -1
  558. package/{utils-85d3d94c.js → utils-83135175.js} +1 -1
  559. package/{utils-85d3d94c.js.map → utils-83135175.js.map} +1 -1
  560. package/{uuid-0ab81e67.js → uuid-c5e7a9dd.js} +1 -1
  561. package/{uuid-0ab81e67.js.map → uuid-c5e7a9dd.js.map} +1 -1
  562. package/{withSendBird.js → withSendbird.js} +2 -2
  563. package/{withSendBird.js.map → withSendbird.js.map} +1 -1
  564. package/ChannelListProvider-737ee36f.js.map +0 -1
  565. package/ChannelProvider-34834493.js.map +0 -1
  566. package/ChannelSettings/components/AdminPanel.js.map +0 -1
  567. package/CreateChannel/components/InviteMembers.js.map +0 -1
  568. package/CreateChannelProvider-3d3e4a7c.js.map +0 -1
  569. package/MemberList-6e33a562.js.map +0 -1
  570. package/OpenChannelProvider-9ef0d52a.js.map +0 -1
  571. package/cjs/ChannelListProvider-f910e236.js.map +0 -1
  572. package/cjs/ChannelProvider-86e2e68c.js.map +0 -1
  573. package/cjs/ChannelSettings/components/AdminPanel.js.map +0 -1
  574. package/cjs/CreateChannel/components/InviteMembers.js.map +0 -1
  575. package/cjs/CreateChannelProvider-07992a6d.js.map +0 -1
  576. package/cjs/MemberList-015c1075.js.map +0 -1
  577. package/cjs/OpenChannelProvider-445f214c.js.map +0 -1
  578. package/cjs/index-2180f74f.js.map +0 -1
  579. package/cjs/index-4e8b61f7.js.map +0 -1
  580. package/cjs/index-5eaebc66.js.map +0 -1
  581. package/cjs/index-a20b40c4.js.map +0 -1
  582. package/cjs/index-bc563d47.js.map +0 -1
  583. package/cjs/openChannelUtils-7fb1abc6.js.map +0 -1
  584. package/cjs/sendBirdSelectors.js +0 -741
  585. package/cjs/sendBirdSelectors.js.map +0 -1
  586. package/cjs/ui/OpenChannelMessageContent.js +0 -14
  587. package/cjs/ui/OpenChannelMessageContent.js.map +0 -1
  588. package/cjs/utils-03155980.js.map +0 -1
  589. package/index-065ef420.js.map +0 -1
  590. package/index-17cf7808.js.map +0 -1
  591. package/index-81a93b05.js +0 -49
  592. package/index-81a93b05.js.map +0 -1
  593. package/index-902c2068.js.map +0 -1
  594. package/index-9deb1389.js.map +0 -1
  595. package/openChannelUtils-2cd370a7.js.map +0 -1
  596. package/sendBirdSelectors.js +0 -713
  597. package/sendBirdSelectors.js.map +0 -1
  598. package/ui/OpenChannelMessageContent.js +0 -8
  599. package/ui/OpenChannelMessageContent.js.map +0 -1
  600. package/utils-b3b6f503.js.map +0 -1
package/index.d.ts CHANGED
@@ -1,1108 +1,1181 @@
1
1
  /**
2
- * Type Definitions for SendbirdUIKit 3.0.0-beta.6
2
+ * Type Definitions for SendbirdUIKit {{ version }}
3
3
  * homepage: https://sendbird.com/
4
4
  * git: https://github.com/sendbird/sendbird-uikit-react
5
5
  */
6
- type ReplyType = "NONE" | "QUOTE_REPLY" | "THREAD";
6
+ declare module "SendbirdUIKitGlobal" {
7
+ import type React from 'react';
8
+ import type Locale from 'date-fns';
9
+ import type SendbirdChat from '@sendbird/chat';
10
+ import type { SendbirdError, SessionHandler, User } from '@sendbird/chat';
11
+ import type { GroupChannel, GroupChannelCreateParams, GroupChannelUpdateParams, Member, SendbirdGroupChat } from '@sendbird/chat/groupChannel';
12
+ import type { AdminMessage, FileMessage, FileMessageCreateParams, MessageListParams, MessageSearchQuery, UserMessage, UserMessageCreateParams, UserMessageUpdateParams } from '@sendbird/chat/message';
13
+ import type { OpenChannel, OpenChannelCreateParams, OpenChannelUpdateParams, SendbirdOpenChat } from '@sendbird/chat/openChannel';
14
+
15
+ export type ReplyType = "NONE" | "QUOTE_REPLY" | "THREAD";
16
+ export interface AppProps {
17
+ appId: string;
18
+ userId: string;
19
+ accessToken?: string;
20
+ theme?: 'light' | 'dark';
21
+ userListQuery?(): UserListQuery;
22
+ nickname?: string;
23
+ profileUrl?: string;
24
+ dateLocale?: Locale;
25
+ allowProfileEdit?: boolean;
26
+ disableUserProfile?: boolean;
27
+ showSearchIcon?: boolean;
28
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
29
+ onProfileEditSuccess?(user: User): void;
30
+ config?: SendbirdProviderConfig;
31
+ useReaction?: boolean;
32
+ useMessageGrouping?: boolean;
33
+ stringSet?: Record<string, string>;
34
+ colorSet?: Record<string, string>;
35
+ imageCompression?: {
36
+ compressionRate?: number,
37
+ resizingWidth?: number | string,
38
+ resizingHeight?: number | string,
39
+ };
40
+ replyType?: ReplyType;
41
+ disableAutoSelect?: boolean;
42
+ }
7
43
 
8
- type Logger = {
9
- info?(title?: unknown, description?: unknown): void;
10
- error?(title?: unknown, description?: unknown): void;
11
- warning?(title?: unknown, description?: unknown): void;
12
- };
44
+ export type Logger = {
45
+ info?(title?: unknown, description?: unknown): void;
46
+ error?(title?: unknown, description?: unknown): void;
47
+ warning?(title?: unknown, description?: unknown): void;
48
+ }
13
49
 
14
- interface UserListQuery {
15
- hasNext?: boolean;
16
- next(callback: unknown): void;
17
- }
50
+ export type MessageHandler = (message: UserMessage | FileMessage) => void;
18
51
 
19
- interface RenderUserProfileProps {
20
- user: SendBird.User | SendBird.Member;
21
- currentUserId: string;
22
- close(): void;
23
- }
52
+ export interface UikitMessageHandler {
53
+ onPending: (handler: MessageHandler) => UikitMessageHandler;
54
+ onFailed: (handler: MessageHandler) => UikitMessageHandler;
55
+ onSucceeded: (handler: MessageHandler) => UikitMessageHandler;
56
+ }
57
+
58
+ export interface UserListQuery {
59
+ hasNext?: boolean;
60
+ next(callback: unknown): void;
61
+ }
62
+
63
+ export interface RenderUserProfileProps {
64
+ user: User | Member;
65
+ currentUserId: string;
66
+ close(): void;
67
+ }
68
+
69
+ export interface SendbirdProviderConfig {
70
+ logLevel?: 'debug' | 'warning' | 'error' | 'info' | 'all' | Array<string>;
71
+ userMention?: {
72
+ maxMentionCount?: number,
73
+ maxSuggestionCount?: number,
74
+ };
75
+ }
24
76
 
25
- interface SendBirdProviderConfig {
26
- logLevel?: 'debug' | 'warning' | 'error' | 'info' | 'all' | Array<string>;
27
- userMention?: {
28
- maxMentionCount?: number,
29
- maxSuggestionCount?: number,
77
+ export interface ClientMessage {
78
+ reqId: string;
79
+ file?: File;
80
+ localUrl?: string;
81
+ _sender: User;
82
+ }
83
+
84
+ export interface RenderMessageProps {
85
+ message: EveryMessage;
86
+ chainTop: boolean;
87
+ chainBottom: boolean;
88
+ }
89
+
90
+ export interface ClientUserMessage extends UserMessage, ClientMessage { }
91
+ export interface ClientFileMessage extends FileMessage, ClientMessage { }
92
+ export interface ClientAdminMessage extends AdminMessage, ClientMessage { }
93
+ export type EveryMessage = ClientUserMessage | ClientFileMessage | ClientAdminMessage;
94
+ export type ClientSentMessages = ClientUserMessage | ClientFileMessage;
95
+
96
+ export type GetSdk = SendbirdChat | undefined;
97
+ export type GetConnect = (
98
+ userId: string,
99
+ accessToken?: string
100
+ ) => Promise<User>;
101
+ export type GetDisconnect = () => Promise<void>;
102
+ export type GetUpdateUserInfo = (
103
+ nickName: string,
104
+ profileUrl?: string
105
+ ) => Promise<User>;
106
+ export type GetCreateGroupChannel = (channelParams: GroupChannelCreateParams) => Promise<GroupChannel>;
107
+ export type GetCreateOpenChannel = (channelParams: OpenChannelCreateParams) => Promise<OpenChannel>;
108
+ export type GetGetGroupChannel = (
109
+ channelUrl: string,
110
+ isSelected?: boolean,
111
+ ) => Promise<GroupChannel>;
112
+ export type GetGetOpenChannel = (
113
+ channelUrl: string,
114
+ ) => Promise<OpenChannel>;
115
+ export type GetLeaveGroupChannel = (channel: GroupChannel) => Promise<void>;
116
+ export type GetEnterOpenChannel = (channel: OpenChannel) => Promise<OpenChannel>;
117
+ export type GetExitOpenChannel = (channel: OpenChannel) => Promise<void>;
118
+ export type GetFreezeChannel = (channel: GroupChannel | OpenChannel) => Promise<void>;
119
+ export type GetUnFreezeChannel = (channel: GroupChannel | OpenChannel) => Promise<void>;
120
+ export type GetSendUserMessage = (
121
+ channel: GroupChannel | OpenChannel,
122
+ UserMessageCreateParams: UserMessageCreateParams,
123
+ ) => UikitMessageHandler;
124
+ export type GetSendFileMessage = (
125
+ channel: GroupChannel | OpenChannel,
126
+ FileMessageCreateParams: FileMessageCreateParams
127
+ ) => UikitMessageHandler;
128
+ export type GetUpdateUserMessage = (
129
+ channel: GroupChannel | OpenChannel,
130
+ messageId: string | number,
131
+ params: UserMessageUpdateParams
132
+ ) => Promise<UserMessage>;
133
+ // type getUpdateFileMessage = (
134
+ // channel: GroupChannel | OpenChannel,
135
+ // messageId: string | number,
136
+ // params: FileMessageUpdateParams,
137
+ // ) => Promise<FileMessage>;
138
+ export type GetDeleteMessage = (
139
+ channel: GroupChannel | OpenChannel,
140
+ message: UserMessage | FileMessage
141
+ ) => Promise<void>;
142
+ export type GetResendUserMessage = (
143
+ channel: GroupChannel | OpenChannel,
144
+ failedMessage: UserMessage
145
+ ) => Promise<UserMessage>;
146
+ export type GetResendFileMessage = (
147
+ channel: GroupChannel | OpenChannel,
148
+ failedMessage: FileMessage
149
+ ) => Promise<FileMessage>;
150
+
151
+ export interface sendbirdSelectorsInterface {
152
+ getSdk: (store: SendBirdState) => GetSdk;
153
+ getConnect: (store: SendBirdState) => GetConnect
154
+ getDisconnect: (store: SendBirdState) => GetDisconnect;
155
+ getUpdateUserInfo: (store: SendBirdState) => GetUpdateUserInfo;
156
+ getCreateGroupChannel: (store: SendBirdState) => GetCreateGroupChannel;
157
+ getCreateOpenChannel: (store: SendBirdState) => GetCreateOpenChannel;
158
+ getGetGroupChannel: (store: SendBirdState) => GetGetGroupChannel;
159
+ getGetOpenChannel: (store: SendBirdState) => GetGetOpenChannel;
160
+ getLeaveChannel: (store: SendBirdState) => GetLeaveGroupChannel;
161
+ getEnterOpenChannel: (store: SendBirdState) => GetEnterOpenChannel;
162
+ getExitOpenChannel: (store: SendBirdState) => GetExitOpenChannel;
163
+ getFreezeChannel: (store: SendBirdState) => GetFreezeChannel;
164
+ getUnFreezeChannel: (store: SendBirdState) => GetUnFreezeChannel;
165
+ getSendUserMessage: (store: SendBirdState) => GetSendUserMessage;
166
+ getSendFileMessage: (store: SendBirdState) => GetSendFileMessage;
167
+ getUpdateUserMessage: (store: SendBirdState) => GetUpdateUserMessage;
168
+ // getUpdateFileMessage: (store: SendBirdState) => GetUpdateFileMessage;
169
+ getDeleteMessage: (store: SendBirdState) => GetDeleteMessage;
170
+ getResendUserMessage: (store: SendBirdState) => GetResendUserMessage;
171
+ getResendFileMessage: (store: SendBirdState) => GetResendFileMessage;
172
+ }
173
+ export interface SendbirdProviderProps {
174
+ userId: string;
175
+ appId: string;
176
+ accessToken?: string;
177
+ configureSession?: (sdk: SendbirdGroupChat | SendbirdOpenChat) => SessionHandler;
178
+ children?: React.ReactNode;
179
+ theme?: 'light' | 'dark';
180
+ nickname?: string;
181
+ profileUrl?: string;
182
+ dateLocale?: Locale;
183
+ disableUserProfile?: boolean;
184
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
185
+ allowProfileEdit?: boolean;
186
+ userListQuery?(): UserListQuery;
187
+ config?: SendbirdProviderConfig;
188
+ stringSet?: Record<string, string>;
189
+ colorSet?: Record<string, string>;
190
+ isMentionEnabled?: boolean;
191
+ imageCompression?: {
192
+ compressionRate?: number,
193
+ resizingWidth?: number | string,
194
+ resizingHeight?: number | string,
195
+ };
196
+ }
197
+
198
+ export interface SendBirdStateConfig {
199
+ disableUserProfile: boolean;
200
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
201
+ allowProfileEdit: boolean;
202
+ isOnline: boolean;
203
+ isMentionEnabled: boolean;
204
+ userMention: {
205
+ maxMentionCount: number;
206
+ maxSuggestionCount: number;
207
+ };
208
+ userId: string;
209
+ appId: string;
210
+ accessToken: string;
211
+ theme: string;
212
+ pubSub: any;
213
+ logger: Logger;
214
+ setCurrenttheme: (theme: string) => void;
215
+ userListQuery?(): UserListQuery;
216
+ imageCompression?: {
217
+ compressionRate?: number,
218
+ resizingWidth?: number | string,
219
+ resizingHeight?: number | string,
220
+ };
221
+ }
222
+ export interface SdkStore {
223
+ error: boolean;
224
+ initialized: boolean;
225
+ loading: boolean;
226
+ sdk: SendbirdGroupChat | SendbirdOpenChat;
227
+ }
228
+ export interface UserStore {
229
+ initialized: boolean;
230
+ loading: boolean;
231
+ user: User;
232
+ }
233
+ export interface SendBirdStateStore {
234
+ sdkStore: SdkStore;
235
+ userStore: UserStore;
236
+ }
237
+
238
+ export type SendBirdState = {
239
+ config: SendBirdStateConfig;
240
+ stores: SendBirdStateStore;
241
+ dispatchers: {
242
+ userDispatcher: UserDispatcher,
243
+ },
244
+ }
245
+
246
+ export type UserDispatcherParams = {
247
+ type: string,
248
+ payload: User;
30
249
  };
31
- }
32
250
 
33
- interface ClientMessage {
34
- reqId: string;
35
- file?: File;
36
- localUrl?: string;
37
- _sender: SendBird.User;
38
- }
39
-
40
- interface RenderMessageProps {
41
- message: EveryMessage;
42
- chainTop: boolean;
43
- chainBottom: boolean;
44
- }
45
-
46
- interface ClientUserMessage extends SendBird.UserMessage, ClientMessage { }
47
- interface ClientFileMessage extends SendBird.FileMessage, ClientMessage { }
48
- interface ClientAdminMessage extends SendBird.AdminMessage, ClientMessage { }
49
- type EveryMessage = ClientUserMessage | ClientFileMessage | ClientAdminMessage;
50
- type ClientSentMessages = ClientUserMessage | ClientFileMessage;
51
-
52
- interface SendBirdProviderProps {
53
- userId: string;
54
- appId: string;
55
- accessToken?: string;
56
- configureSession?: (sdk: SendBird.SendBirdInstance) => SendBird.SessionHandler;
57
- children?: React.ReactNode;
58
- theme?: 'light' | 'dark';
59
- nickname?: string;
60
- profileUrl?: string;
61
- dateLocale?: Locale;
62
- disableUserProfile?: boolean;
63
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
64
- allowProfileEdit?: boolean;
65
- userListQuery?(): UserListQuery;
66
- config?: SendBirdProviderConfig;
67
- stringSet?: Record<string, string>;
68
- colorSet?: Record<string, string>;
69
- isMentionEnabled?: boolean;
70
- imageCompression?: {
71
- compressionRate?: number,
72
- resizingWidth?: number | string,
73
- resizingHeight?: number | string,
251
+ export type UserDispatcher = (params: UserDispatcherParams) => void;
252
+
253
+
254
+ export interface ApplicationUserListQuery {
255
+ limit?: number;
256
+ userIdsFilter?: Array<string>;
257
+ metaDataKeyFilter?: string;
258
+ metaDataValuesFilter?: Array<string>;
259
+ }
260
+
261
+ export interface GroupChannelListQuery {
262
+ limit?: number;
263
+ includeEmpty?: boolean;
264
+ order?: 'latest_last_message' | 'chronological' | 'channel_name_alphabetical' | 'metadata_value_alphabetical';
265
+ userIdsExactFilter?: Array<string>;
266
+ userIdsIncludeFilter?: Array<string>;
267
+ userIdsIncludeFilterQueryType?: 'AND' | 'OR';
268
+ nicknameContainsFilter?: string;
269
+ channelNameContainsFilter?: string;
270
+ customTypesFilter?: Array<string>;
271
+ customTypeStartsWithFilter?: string;
272
+ channelUrlsFilter?: Array<string>;
273
+ superChannelFilter?: 'all' | 'super' | 'nonsuper';
274
+ publicChannelFilter?: 'all' | 'public' | 'private';
275
+ metadataOrderKeyFilter?: string;
276
+ memberStateFilter?: 'all' | 'joined_only' | 'invited_only' | 'invited_by_friend' | 'invited_by_non_friend';
277
+ hiddenChannelFilter?: 'unhidden_only' | 'hidden_only' | 'hidden_allow_auto_unhide' | 'hidden_prevent_auto_unhide';
278
+ unreadChannelFilter?: 'all' | 'unread_message';
279
+ includeFrozen?: boolean;
280
+ }
281
+ export interface ChannelListQueries {
282
+ applicationUserListQuery?: ApplicationUserListQuery;
283
+ channelListQuery?: GroupChannelListQuery;
284
+ }
285
+
286
+ export interface ChannelListProviderProps {
287
+ allowProfileEdit?: boolean;
288
+ onBeforeCreateChannel?(users: Array<string>): GroupChannelCreateParams;
289
+ onThemeChange?(theme: string): void;
290
+ onProfileEditSuccess?(user: User): void;
291
+ onChannelSelect?(channel: GroupChannel): void;
292
+ sortChannelList?: (channels: GroupChannel[]) => GroupChannel[];
293
+ queries?: ChannelListQueries;
294
+ children?: React.ReactNode;
295
+ className?: string | string[];
296
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
297
+ disableUserProfile?: boolean;
298
+ disableAutoSelect?: boolean;
299
+ }
300
+
301
+ export interface ChannelListProviderInterface extends ChannelListProviderProps {
302
+ initialized: boolean;
303
+ loading: boolean;
304
+ allChannels: GroupChannel[];
305
+ currentChannel: GroupChannel;
306
+ showSettings: boolean;
307
+ channelListQuery: GroupChannelListQuery;
308
+ currentUserId: string;
309
+ // channelListDispatcher: CustomUseReducerDispatcher;
310
+ channelSource: GroupChannelListQuery;
311
+ }
312
+
313
+ export interface RenderChannelPreviewProps {
314
+ channel: GroupChannel;
315
+ onLeaveChannel(
316
+ channel: GroupChannel,
317
+ onLeaveChannelCb?: (c: GroupChannel) => void,
318
+ );
319
+ }
320
+
321
+ export interface ChannelListUIProps {
322
+ renderChannelPreview?: (props: RenderChannelPreviewProps) => React.ReactNode;
323
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
324
+ renderHeader?: (props: void) => React.ReactNode;
325
+ renderPlaceHolderError?: (props: void) => React.ReactNode;
326
+ renderPlaceHolderLoading?: (props: void) => React.ReactNode;
327
+ renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;
328
+ }
329
+
330
+ export interface ChannelListProps extends ChannelListProviderInterface, ChannelListUIProps {}
331
+
332
+ export interface ChannelListHeaderInterface {
333
+ renderHeader?: (props: void) => React.ReactNode;
334
+ renderIconButton?: (props: void) => React.ReactNode;
335
+ onEdit?: (props: void) => void;
336
+ allowProfileEdit?: boolean;
337
+ }
338
+
339
+ export interface ChannelPreviewInterface {
340
+ channel: GroupChannel;
341
+ isActive?: boolean;
342
+ onClick: () => void;
343
+ renderChannelAction: (props: { channel: GroupChannel }) => React.ReactNode;
344
+ tabIndex: number;
345
+ }
346
+
347
+ export interface ChannelPreviewActionInterface {
348
+ disabled?: boolean;
349
+ onLeaveChannel?: () => void;
350
+ }
351
+
352
+ export interface ChannelSettingsProviderInterface {
353
+ channelUrl: string;
354
+ onCloseClick?(): void;
355
+ onChannelModified?(channel: GroupChannel): void;
356
+ onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): GroupChannelUpdateParams;
357
+ queries?: ChannelSettingsQueries;
358
+ forceUpdateUI(): void;
359
+ channel: GroupChannel;
360
+ invalidChannel: boolean;
361
+ }
362
+
363
+ export interface ChannelSettingsUIProps {
364
+ renderPlaceholderError?: () => React.ReactNode;
365
+ renderChannelProfile?: () => React.ReactNode;
366
+ renderModerationPanel?: () => React.ReactNode;
367
+ renderLeaveChannel?: () => React.ReactNode;
368
+ }
369
+
370
+ export interface ApplicationUserListQuery {
371
+ limit?: number;
372
+ userIdsFilter?: Array<string>;
373
+ metaDataKeyFilter?: string;
374
+ metaDataValuesFilter?: Array<string>;
375
+ }
376
+
377
+ export interface ChannelSettingsQueries {
378
+ applicationUserListQuery?: ApplicationUserListQuery;
379
+ }
380
+
381
+ export type ChannelSettingsContextProps = {
382
+ children: React.ReactNode;
383
+ channelUrl: string;
384
+ className?: string;
385
+ onCloseClick?(): void;
386
+ onChannelModified?(channel: GroupChannel): void;
387
+ onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): GroupChannelUpdateParams;
388
+ queries?: ChannelSettingsQueries;
389
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
390
+ disableUserProfile?: boolean;
391
+ }
392
+
393
+ export interface ChannelSettingsProps extends ChannelSettingsUIProps, ChannelSettingsContextProps {
394
+ }
395
+
396
+ export type ChannelSettingsEditDetailsProps = {
397
+ onSubmit: () => void;
398
+ onCancel: () => void;
399
+ }
400
+
401
+ export type CustomUser = User & {
402
+ isMuted: boolean;
403
+ role: string;
404
+ }
405
+
406
+ export interface UserListItemActionProps {
407
+ actionRef: React.RefObject<HTMLInputElement>;
408
+ parentRef: React.RefObject<HTMLInputElement>;
409
+ }
410
+
411
+ export interface UserListItemProps {
412
+ user: CustomUser;
413
+ currentUser?: string;
414
+ className?: string;
415
+ action?(props: UserListItemActionProps): React.ReactElement;
416
+ }
417
+
418
+ export type LeaveChannelProps = {
419
+ onSubmit: () => void;
420
+ onCancel: () => void;
74
421
  };
75
- }
76
422
 
77
- interface SendBirdStateConfig {
78
- disableUserProfile: boolean;
79
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
80
- allowProfileEdit: boolean;
81
- isOnline: boolean;
82
- isMentionEnabled: boolean;
83
- userMention: {
84
- maxMentionCount: number;
85
- maxSuggestionCount: number;
423
+ /**
424
+ * Channel
425
+ */
426
+ export interface RenderMessageProps {
427
+ message: EveryMessage;
428
+ chainTop: boolean;
429
+ chainBottom: boolean;
430
+ }
431
+
432
+ export type ChannelQueries = {
433
+ messageListParams?: MessageListParams;
86
434
  };
87
- userId: string;
88
- appId: string;
89
- accessToken: string;
90
- theme: string;
91
- pubSub: any;
92
- logger: Logger;
93
- setCurrenttheme: (theme: string) => void;
94
- userListQuery?(): UserListQuery;
95
- imageCompression?: {
96
- compressionRate?: number,
97
- resizingWidth?: number | string,
98
- resizingHeight?: number | string,
435
+
436
+ export type ChannelContextProps = {
437
+ channelUrl: string;
438
+ children?: React.ReactNode;
439
+ useMessageGrouping?: boolean;
440
+ useReaction?: boolean;
441
+ showSearchIcon?: boolean;
442
+ highlightedMessage?: number;
443
+ startingPoint?: number;
444
+ onBeforeSendUserMessage?(text: string, quotedMessage?: UserMessage | FileMessage): UserMessageCreateParams;
445
+ onBeforeSendFileMessage?(file: File, quotedMessage?: UserMessage | FileMessage): FileMessageCreateParams;
446
+ onBeforeUpdateUserMessage?(text: string): UserMessageUpdateParams;
447
+ onChatHeaderActionClick?(event: React.MouseEvent<HTMLElement>): void;
448
+ onSearchClick?(): void;
449
+ replyType?: ReplyType;
450
+ queries?: ChannelQueries;
451
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
452
+ disableUserProfile?: boolean;
99
453
  };
100
- }
101
- interface SdkStore {
102
- error: boolean;
103
- initialized: boolean;
104
- loading: boolean;
105
- sdk: SendBird.SendBirdInstance;
106
- }
107
- interface UserStore {
108
- initialized: boolean;
109
- loading: boolean;
110
- user: SendBird.User;
111
- }
112
- interface SendBirdStateStore {
113
- sdkStore: SdkStore;
114
- userStore: UserStore;
115
- }
116
-
117
- interface MessageSearchQueryType extends SendBird.MessageSearchQueryOptions {
118
- key: string;
119
- hasNext?: boolean;
120
- }
121
-
122
- type SendBirdState = {
123
- config: SendBirdStateConfig;
124
- stores: SendBirdStateStore;
125
- dispatchers: {
126
- userDispatcher: UserDispatcher,
127
- },
128
- }
129
-
130
- type UserDispatcherParams = {
131
- type: string,
132
- payload: SendBird.User
133
- };
134
-
135
- type UserDispatcher = (params: UserDispatcherParams) => void;
136
-
137
- type GetSdk = SendBird.SendBirdInstance | undefined;
138
- type GetConnect = (
139
- userId: string,
140
- accessToken?: string
141
- ) => Promise<SendBird.User>;
142
- type GetDisconnect = () => Promise<void>;
143
- type GetUpdateUserInfo = (
144
- nickName: string,
145
- profileUrl?: string
146
- ) => Promise<SendBird.User>;
147
- type GetSendUserMessage = (
148
- channelUrl: string,
149
- userMessageParams: SendBird.UserMessageParams
150
- ) => Promise<SendBird.UserMessage>;
151
- type GetSendFileMessage = (
152
- channelUrl: string,
153
- fileMessageParams: SendBird.FileMessageParams
154
- ) => Promise<SendBird.FileMessage>;
155
- type GetUpdateUserMessage = (
156
- channelUrl: string,
157
- messageId: string | number,
158
- params: SendBird.UserMessageParams
159
- ) => Promise<SendBird.UserMessage>;
160
- type GetDeleteMessage = (
161
- channelUrl: string,
162
- message: SendBird.AdminMessage | SendBird.UserMessage | SendBird.FileMessage
163
- ) => Promise<void>;
164
- type GetResendUserMessage = (
165
- channelUrl: string,
166
- failedMessage: SendBird.UserMessage
167
- ) => Promise<SendBird.UserMessage>;
168
- type GetResendFileMessage = (
169
- channelUrl: string,
170
- failedMessage: SendBird.FileMessage
171
- ) => Promise<SendBird.FileMessage>;
172
- type GetFreezeChannel = (channelUrl: string) => Promise<SendBird.GroupChannel>;
173
- type GetUnFreezeChannel = (channelUrl: string) => Promise<SendBird.GroupChannel>;
174
- type GetCreateChannel = (channelParams: SendBird.GroupChannelParams) => Promise<SendBird.GroupChannel>;
175
- type GetLeaveChannel = (channelUrl: string) => Promise<SendBird.GroupChannel>;
176
- type GetCreateOpenChannel = (channelParams: SendBird.OpenChannelParams) => Promise<SendBird.OpenChannel>;
177
- type GetEnterOpenChannel = (channelUrl: string) => Promise<null>;
178
- type GetExitOpenChannel = (channelUrl: string) => Promise<null>;
179
- type GetOpenChannelSendUserMessage = (
180
- channelUrl: string,
181
- params: SendBird.UserMessageParams,
182
- ) => Promise<SendBird.UserMessage>;
183
- type GetOpenChannelSendFileMessage = (
184
- channelUrl: string,
185
- params: SendBird.FileMessageParams,
186
- ) => Promise<SendBird.FileMessage>;
187
- type GetOpenChannelUpdateUserMessage = (
188
- channelUrl: string,
189
- messageId: string,
190
- params: SendBird.UserMessageParams,
191
- ) => Promise<SendBird.UserMessage>;
192
- type GetOpenChannelDeleteMessage = (
193
- channelUrl: string,
194
- message: SendBird.UserMessage | SendBird.FileMessage,
195
- ) => Promise<SendBird.UserMessage | SendBird.FileMessage>;
196
- type GetOpenChannelResendUserMessage = (
197
- channelUrl: string,
198
- failedMessage: SendBird.UserMessage,
199
- ) => Promise<SendBird.UserMessage>;
200
- type GetOpenChannelResendFileMessage = (
201
- channelUrl: string,
202
- failedMessage: SendBird.FileMessage,
203
- ) => Promise<SendBird.FileMessage>;
204
-
205
-
206
- interface sendBirdSelectorsInterface {
207
- getSdk: (store: SendBirdState) => GetSdk;
208
- getConnect: (store: SendBirdState) => GetConnect
209
- getDisconnect: (store: SendBirdState) => GetDisconnect;
210
- getUpdateUserInfo: (store: SendBirdState) => GetUpdateUserInfo;
211
- getSendUserMessage: (store: SendBirdState) => GetSendUserMessage;
212
- getSendFileMessage: (store: SendBirdState) => GetSendFileMessage;
213
- getUpdateUserMessage: (store: SendBirdState) => GetUpdateUserMessage;
214
- getDeleteMessage: (store: SendBirdState) => GetDeleteMessage;
215
- getResendUserMessage: (store: SendBirdState) => GetResendUserMessage;
216
- getResendFileMessage: (store: SendBirdState) => GetResendFileMessage;
217
- getFreezeChannel: (store: SendBirdState) => GetFreezeChannel;
218
- getUnFreezeChannel: (store: SendBirdState) => GetUnFreezeChannel;
219
- getCreateChannel: (store: SendBirdState) => GetCreateChannel;
220
- getLeaveChannel: (store: SendBirdState) => GetLeaveChannel;
221
- getCreateOpenChannel: (store: SendBirdState) => GetCreateOpenChannel;
222
- getEnterOpenChannel: (store: SendBirdState) => GetEnterOpenChannel;
223
- getExitOpenChannel: (store: SendBirdState) => GetExitOpenChannel;
224
- enterOpenChannel: (store: SendBirdState) => GetEnterOpenChannel;
225
- exitOpenChannel: (store: SendBirdState) => GetExitOpenChannel;
226
- getOpenChannelSendUserMessage: (store: SendBirdState) => GetOpenChannelSendUserMessage;
227
- getOpenChannelSendFileMessage: (store: SendBirdState) => GetOpenChannelSendFileMessage;
228
- getOpenChannelUpdateUserMessage: (store: SendBirdState) => GetOpenChannelUpdateUserMessage;
229
- getOpenChannelDeleteMessage: (store: SendBirdState) => GetOpenChannelDeleteMessage;
230
- getOpenChannelResendUserMessage: (store: SendBirdState) => GetOpenChannelResendUserMessage;
231
- getOpenChannelResendFileMessage: (store: SendBirdState) => GetOpenChannelResendFileMessage;
232
- }
233
-
234
- interface AppProps {
235
- appId: string;
236
- userId: string;
237
- accessToken?: string;
238
- theme?: 'light' | 'dark';
239
- userListQuery?(): UserListQuery;
240
- nickname?: string;
241
- profileUrl?: string;
242
- dateLocale?: Locale;
243
- allowProfileEdit?: boolean;
244
- disableUserProfile?: boolean;
245
- showSearchIcon?: boolean;
246
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
247
- onProfileEditSuccess?(user: SendBird.User): void;
248
- config?: SendBirdProviderConfig;
249
- useReaction?: boolean;
250
- useMessageGrouping?: boolean;
251
- stringSet?: Record<string, string>;
252
- colorSet?: Record<string, string>;
253
- imageCompression?: {
254
- compressionRate?: number,
255
- resizingWidth?: number | string,
256
- resizingHeight?: number | string,
454
+
455
+ export interface ChannelUIProps {
456
+ renderPlaceholderLoader?: () => React.ReactNode;
457
+ renderPlaceholderInvalid?: () => React.ReactNode;
458
+ renderPlaceholderEmpty?: () => React.ReactNode;
459
+ renderChannelHeader?: () => React.ReactNode;
460
+ renderMessage?: (props: RenderMessageProps) => React.ComponentType;
461
+ renderMessageInput?: () => React.ReactNode;
462
+ renderTypingIndicator?: () => React.ReactNode;
463
+ renderCustomSeperator?: () => React.ReactNode;
464
+ }
465
+
466
+ export type CoreMessageType = AdminMessage | UserMessage | FileMessage;
467
+
468
+ export interface MessageStoreInterface {
469
+ allMessages: CoreMessageType[];
470
+ loading: boolean;
471
+ initialized: boolean;
472
+ unreadSince: string;
473
+ isInvalid: boolean;
474
+ currentGroupChannel: GroupChannel;
475
+ hasMorePrev: boolean;
476
+ oldestMessageTimeStamp: number;
477
+ hasMoreNext: boolean;
478
+ latestMessageTimeStamp: number;
479
+ emojiContainer: any;
480
+ readStatus: any;
481
+ }
482
+
483
+ export interface ChannelProviderInterface extends ChannelContextProps, ChannelContextProps {
484
+ scrollToMessage?(createdAt: number, messageId: number): void;
485
+ messageActionTypes: Record<string ,string>;
486
+ quoteMessage: CoreMessageType;
487
+ setQuoteMessage: React.Dispatch<React.SetStateAction<CoreMessageType>>;
488
+ initialTimeStamp: number;
489
+ setInitialTimeStamp: React.Dispatch<React.SetStateAction<number>>;
490
+ animatedMessageId: number;
491
+ highLightedMessageId: number;
492
+ nicknamesMap: Map<string, string>;
493
+ scrollRef: React.MutableRefObject<HTMLDivElement>;
494
+ setAnimatedMessageId: React.Dispatch<React.SetStateAction<number>>;
495
+ setHighLightedMessageId: React.Dispatch<React.SetStateAction<number>>;
496
+ messageInputRef: React.MutableRefObject<HTMLInputElement>,
497
+ toggleReaction(message: UserMessage | FileMessage, emojiKey: string, isReacted: boolean): void,
498
+ }
499
+
500
+ export type FileViewerProps = {
501
+ onCancel:() => void;
502
+ message: ClientFileMessage;
503
+ }
504
+
505
+ export type MessageUIProps = {
506
+ message: EveryMessage;
507
+ hasSeparator?: boolean;
508
+ chainTop?: boolean;
509
+ chainBottom?: boolean;
510
+ handleScroll: () => void;
511
+ // for extending
512
+ renderMessage?: (props: RenderMessageProps) => React.ReactNode;
513
+ renderCustomSeperator?: () => React.ReactNode;
514
+ renderEditInput?: () => React.ReactNode;
515
+ renderMessageContent?: () => React.ReactNode;
257
516
  };
258
- replyType?: ReplyType;
259
- disableAutoSelect?: boolean;
260
- }
261
-
262
- interface ApplicationUserListQuery {
263
- limit?: number;
264
- userIdsFilter?: Array<string>;
265
- metaDataKeyFilter?: string;
266
- metaDataValuesFilter?: Array<string>;
267
- }
268
-
269
- interface GroupChannelListQuery {
270
- limit?: number;
271
- includeEmpty?: boolean;
272
- order?: 'latest_last_message' | 'chronological' | 'channel_name_alphabetical' | 'metadata_value_alphabetical';
273
- userIdsExactFilter?: Array<string>;
274
- userIdsIncludeFilter?: Array<string>;
275
- userIdsIncludeFilterQueryType?: 'AND' | 'OR';
276
- nicknameContainsFilter?: string;
277
- channelNameContainsFilter?: string;
278
- customTypesFilter?: Array<string>;
279
- customTypeStartsWithFilter?: string;
280
- channelUrlsFilter?: Array<string>;
281
- superChannelFilter?: 'all' | 'super' | 'nonsuper';
282
- publicChannelFilter?: 'all' | 'public' | 'private';
283
- metadataOrderKeyFilter?: string;
284
- memberStateFilter?: 'all' | 'joined_only' | 'invited_only' | 'invited_by_friend' | 'invited_by_non_friend';
285
- hiddenChannelFilter?: 'unhidden_only' | 'hidden_only' | 'hidden_allow_auto_unhide' | 'hidden_prevent_auto_unhide';
286
- unreadChannelFilter?: 'all' | 'unread_message';
287
- includeFrozen?: boolean;
288
- }
289
- interface ChannelListQueries {
290
- applicationUserListQuery?: ApplicationUserListQuery;
291
- channelListQuery?: GroupChannelListQuery;
292
- }
293
-
294
- interface ChannelListProviderProps {
295
- allowProfileEdit?: boolean;
296
- onBeforeCreateChannel?(users: Array<string>): SendBird.GroupChannelParams;
297
- onThemeChange?(theme: string): void;
298
- onProfileEditSuccess?(user: SendBird.User): void;
299
- onChannelSelect?(channel: SendBird.GroupChannel): void;
300
- sortChannelList?: (channels: SendBird.GroupChannel[]) => SendBird.GroupChannel[];
301
- queries?: ChannelListQueries;
302
- children?: React.ReactNode;
303
- className?: string | string[];
304
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
305
- disableUserProfile?: boolean;
306
- disableAutoSelect?: boolean;
307
- }
308
-
309
- interface ChannelListProviderInterface extends ChannelListProviderProps {
310
- initialized: boolean;
311
- loading: boolean;
312
- allChannels: SendBird.GroupChannel[];
313
- currentChannel: SendBird.GroupChannel;
314
- showSettings: boolean;
315
- channelListQuery: GroupChannelListQuery;
316
- currentUserId: string;
317
- // channelListDispatcher: CustomUseReducerDispatcher;
318
- channelSource: SendBird.GroupChannelListQuery;
319
- }
320
517
 
321
- interface RenderChannelPreviewProps {
322
- channel: SendBird.GroupChannel;
323
- onLeaveChannel(
324
- channel: SendBird.GroupChannel,
325
- onLeaveChannelCb?: (c: SendBird.GroupChannel) => void,
326
- );
327
- }
518
+ export type MessageListProps = {
519
+ renderMessage?: (props: RenderMessageProps) => React.ReactNode;
520
+ renderPlaceholderEmpty?: () => React.ReactNode;
521
+ renderCustomSeperator?: () => React.ReactNode;
522
+ };
328
523
 
329
- interface ChannelListUIProps {
330
- renderChannelPreview?: (props: RenderChannelPreviewProps) => React.ReactNode;
331
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
332
- renderHeader?: (props: void) => React.ReactNode;
333
- renderPlaceHolderError?: (props: void) => React.ReactNode;
334
- renderPlaceHolderLoading?: (props: void) => React.ReactNode;
335
- renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;
336
- }
524
+ export type SuggestedMentionListProps = {
525
+ targetNickname: string;
526
+ memberListQuery?: Record<string, string>;
527
+ onUserItemClick?: (member: User) => void;
528
+ onFocusItemChange?: (member: User) => void;
529
+ onFetchUsers?: (users: Array<User>) => void;
530
+ renderUserMentionItem?: (props: { user: User }) => JSX.Element;
531
+ ableAddMention: boolean;
532
+ maxMentionCount?: number;
533
+ maxSuggestionCount?: number;
534
+ inputEvent?: React.KeyboardEvent<HTMLDivElement>;
535
+ };
337
536
 
338
- interface ChannelListProps extends ChannelListProviderInterface, ChannelListUIProps {}
537
+ export type SuggestedUserMentionItemProps = {
538
+ member: User | Member;
539
+ isFocused?: boolean;
540
+ onClick?: (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
541
+ onMouseOver?: (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
542
+ renderUserMentionItem?: (props: { user: User | Member }) => JSX.Element;
543
+ };
339
544
 
340
- interface ChannelListHeaderInterface {
341
- renderHeader?: (props: void) => React.ReactNode;
342
- renderIconButton?: (props: void) => React.ReactNode;
343
- onEdit?: (props: void) => void;
344
- allowProfileEdit?: boolean;
345
- }
545
+ export interface UnreadCountProps {
546
+ count: number;
547
+ time: string;
548
+ onClick(): void;
549
+ }
346
550
 
347
- interface ChannelPreviewInterface {
348
- channel: SendBird.GroupChannel;
349
- isActive?: boolean;
350
- onClick: () => void;
351
- renderChannelAction: (props: { channel: SendBird.GroupChannel }) => React.ReactNode;
352
- tabIndex: number;
353
- }
551
+ export interface ChannelProps extends ChannelContextProps, ChannelUIProps {
552
+ }
354
553
 
355
- interface ChannelPreviewActionInterface {
356
- disabled?: boolean;
357
- onLeaveChannel?: () => void;
358
- }
554
+ export interface RemoveMessageProps {
555
+ onCancel: () => void;
556
+ message: EveryMessage;
557
+ }
359
558
 
360
- interface ChannelSettingsProviderInterface {
361
- channelUrl: string;
362
- onCloseClick?(): void;
363
- onChannelModified?(channel: SendBird.GroupChannel): void;
364
- onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): SendBird.GroupChannelParams;
365
- queries?: ChannelSettingsQueries;
366
- forceUpdateUI(): void;
367
- channel: SendBird.GroupChannel;
368
- invalidChannel: boolean;
369
- }
370
-
371
- interface ChannelSettingsUIProps {
372
- renderPlaceholderError?: () => React.ReactNode;
373
- renderChannelProfile?: () => React.ReactNode;
374
- renderModerationPanel?: () => React.ReactNode;
375
- renderLeaveChannel?: () => React.ReactNode;
376
- }
559
+ /**
560
+ * OpenChannel
561
+ */
562
+ export type OpenChannelQueries = {
563
+ // https://sendbird.github.io/core-sdk-javascript/module-model_params_messageListParams-MessageListParams.html
564
+ messageListParams?: {
565
+ replyType?: string,
566
+ messageType?: string,
567
+ prevResultSize?: number,
568
+ nextResultSize?: number,
569
+ reverse?: boolean,
570
+ isInclusive?: boolean,
571
+ includeMetaArray?: boolean,
572
+ // UIKit doesn't support emoji reaction in OpenChannel
573
+ // includeReactions?: boolean,
574
+ // UIKit doesn't support message threading in OpenChannel
575
+ // includeThreadInfo?: boolean,
576
+ includePollDetails?: boolean,
577
+ includeParentMessageInfo?: boolean,
578
+ showSubchannelMessagesOnly?: boolean,
579
+ customTypes?: Array<string>,
580
+ senderUserIds?: Array<string>,
581
+ },
582
+ };
377
583
 
378
- interface ApplicationUserListQuery {
379
- limit?: number;
380
- userIdsFilter?: Array<string>;
381
- metaDataKeyFilter?: string;
382
- metaDataValuesFilter?: Array<string>;
383
- }
584
+ export interface OpenChannelProviderProps {
585
+ channelUrl: string;
586
+ children?: React.ReactNode;
587
+ useMessageGrouping?: boolean;
588
+ queries?: OpenChannelQueries;
589
+ messageLimit?: number;
590
+ onBeforeSendUserMessage?(text: string): UserMessageCreateParams;
591
+ onBeforeSendFileMessage?(file_: File): FileMessageCreateParams;
592
+ onChatHeaderActionClick?(): void;
593
+ disableUserProfile?: boolean;
594
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
595
+ }
384
596
 
385
- interface ChannelSettingsQueries {
386
- applicationUserListQuery?: ApplicationUserListQuery;
387
- }
597
+ export interface OpenChannelMessagesState {
598
+ allMessages: Array<EveryMessage>;
599
+ loading: boolean;
600
+ initialized: boolean;
601
+ currentOpenChannel: OpenChannel;
602
+ isInvalid: boolean;
603
+ hasMore: boolean;
604
+ lastMessageTimestamp: number;
605
+ frozen: boolean;
606
+ operators: Array<User>;
607
+ participants: Array<User>;
608
+ bannedParticipantIds: Array<string>;
609
+ mutedParticipantIds: Array<string>;
610
+ }
388
611
 
389
- type ChannelSettingsContextProps = {
390
- children: React.ReactNode;
391
- channelUrl: string;
392
- className?: string;
393
- onCloseClick?(): void;
394
- onChannelModified?(channel: SendBird.GroupChannel): void;
395
- onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): SendBird.GroupChannelParams;
396
- queries?: ChannelSettingsQueries;
397
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
398
- disableUserProfile?: boolean;
399
- }
612
+ export interface OpenChannelInterface extends OpenChannelProviderProps, OpenChannelMessagesState {
613
+ // derived/utils
614
+ messageInputRef: React.RefObject<HTMLInputElement>;
615
+ conversationScrollRef: React.RefObject<HTMLDivElement>;
616
+ disabled: boolean;
617
+ amIBanned: boolean;
618
+ amIMuted: boolean;
619
+ amIOperator: boolean;
620
+ fetchMore: boolean;
621
+ checkScrollBottom: () => boolean;
622
+ onScroll: (callback: () => void) => void;
623
+ }
400
624
 
401
- interface ChannelSettingsProps extends ChannelSettingsUIProps, ChannelSettingsContextProps {
402
- }
625
+ export interface OpenChannelUIProps {
626
+ renderMessage?: (props: RenderMessageProps) => React.ReactNode;
627
+ renderHeader?: () => React.ReactNode;
628
+ renderInput?: () => React.ReactNode;
629
+ renderPlaceHolderEmptyList?: () => React.ReactNode;
630
+ renderPlaceHolderError?: () => React.ReactNode;
631
+ renderPlaceHolderLoading?: () => React.ReactNode;
632
+ }
403
633
 
404
- type ChannelSettingsEditDetailsProps = {
405
- onSubmit: () => void;
406
- onCancel: () => void;
407
- }
634
+ export interface OpenChannelProps extends OpenChannelProviderProps, OpenChannelUIProps {
635
+ }
408
636
 
409
- type CustomUser = SendBird.User & {
410
- isMuted: boolean;
411
- role: string;
412
- }
637
+ export type OpenchannelMessageListProps = {
638
+ renderMessage?: (props: RenderMessageProps) => React.ReactNode;
639
+ renderPlaceHolderEmptyList?: () => React.ReactNode;
640
+ }
413
641
 
414
- interface UserListItemActionProps {
415
- actionRef: React.RefObject<HTMLInputElement>;
416
- parentRef: React.RefObject<HTMLInputElement>;
417
- }
642
+ export type OpenChannelMessageProps = {
643
+ renderMessage?: (props: RenderMessageProps) => React.ReactNode;
644
+ message: EveryMessage;
645
+ chainTop?: boolean;
646
+ chainBottom?: boolean;
647
+ hasSeparator?: boolean;
648
+ editDisabled?: boolean;
649
+ };
418
650
 
419
- interface UserListItemProps {
420
- user: CustomUser;
421
- currentUser?: string;
422
- className?: string;
423
- action?(props: UserListItemActionProps): React.ReactElement;
424
- }
651
+ /**
652
+ * OpenChannelSettings
653
+ */
654
+ export interface OpenChannelSettingsContextProps {
655
+ channelUrl: string;
656
+ children?: React.ReactNode;
657
+ onCloseClick?(): void;
658
+ onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): OpenChannelUpdateParams;
659
+ onChannelModified?(channel: OpenChannel): void;
660
+ onDeleteChannel?(channel: OpenChannel): void;
661
+ disableUserProfile?: boolean;
662
+ renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
663
+ }
664
+
665
+ export interface OpenChannelSettingsUIProps {
666
+ renderOperatorUI?: () => React.ReactNode;
667
+ renderParticipantList?: () => React.ReactNode;
668
+ }
669
+
670
+ export interface OpenChannelSettingsProps extends OpenChannelSettingsContextProps, OpenChannelSettingsUIProps {
671
+ }
672
+
673
+ export interface OpenChannelSettingsContextType extends OpenChannelSettingsContextProps {
674
+ channelUrl: string;
675
+ channel?: OpenChannel;
676
+ setChannel?: React.Dispatch<React.SetStateAction<OpenChannel>>;
677
+ }
425
678
 
426
- type LeaveChannelProps = {
427
- onSubmit: () => void;
428
- onCancel: () => void;
429
- };
679
+ export interface OperatorUIProps {
680
+ renderChannelProfile?: () => React.ReactNode;
681
+ }
682
+
683
+ export interface OpenChannelEditDetailsProps {
684
+ onCancel(): void;
685
+ }
686
+
687
+ /**
688
+ * MessageSearch
689
+ */
690
+ export interface MessageSearchProviderProps {
691
+ channelUrl: string;
692
+ children?: React.ReactNode;
693
+ searchString?: string;
694
+ requestString?: string;
695
+ messageSearchQuery?: MessageSearchQuery;
696
+ onResultLoaded?(messages?: Array<ClientSentMessages>, error?: SendbirdError): void;
697
+ onResultClick?(message: ClientSentMessages): void;
698
+ }
699
+
700
+ export type MessageSearchScrollCallbackReturn = (
701
+ callback: (
702
+ messages: Array<UserMessage | FileMessage | AdminMessage>,
703
+ /* eslint-disable @typescript-eslint/no-explicit-any*/
704
+ error: any,
705
+ ) => void
706
+ ) => void;
707
+
708
+ export type MessageSearchDispatcherType = { type: string, payload: any };
709
+ export interface MessageSearchProviderInterface extends MessageSearchProviderProps {
710
+ retryCount: number;
711
+ setRetryCount: React.Dispatch<React.SetStateAction<number>>;
712
+ selectedMessageId: number;
713
+ setSelectedMessageId: React.Dispatch<React.SetStateAction<number>>;
714
+ messageSearchDispatcher: (diapatcher: MessageSearchDispatcherType) => void;
715
+ scrollRef: React.MutableRefObject<HTMLDivElement>;
716
+ allMessages: Array<ClientFileMessage | ClientUserMessage>;
717
+ loading: boolean;
718
+ isInvalid: boolean;
719
+ currentChannel: GroupChannel;
720
+ currentMessageSearchQuery: MessageSearchQuery;
721
+ hasMoreResult: boolean;
722
+ onScroll: MessageSearchScrollCallbackReturn;
723
+ handleRetryToConnect: () => void;
724
+ handleOnScroll: (e: React.BaseSyntheticEvent) => void;
725
+ }
726
+
727
+ export interface MessageSearchUIProps {
728
+ renderPlaceHolderError?: (props: void) => React.ReactNode;
729
+ renderPlaceHolderLoading?: (props: void) => React.ReactNode;
730
+ renderPlaceHolderNoString?: (props: void) => React.ReactNode;
731
+ renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;
732
+ renderSearchItem?(
733
+ {
734
+ message,
735
+ onResultClick,
736
+ }: {
737
+ message: ClientSentMessages,
738
+ onResultClick?: (message: ClientSentMessages) => void,
739
+ }
740
+ ): JSX.Element;
741
+ }
742
+
743
+ export interface MessageSearchProps extends MessageSearchUIProps, MessageSearchProviderProps {}
744
+
745
+ /**
746
+ * CreateChannel
747
+ */
748
+ export interface CreateChannelProviderProps {
749
+ children?: React.ReactNode;
750
+ onCreateChannel(channel: GroupChannel): void;
751
+ onBeforeCreateChannel?(users: Array<string>): GroupChannelCreateParams;
752
+ userListQuery?(): UserListQuery;
753
+ }
754
+
755
+ export interface CreateChannelContextInterface {
756
+ onBeforeCreateChannel?(users: Array<string>): GroupChannelCreateParams;
757
+ createChannel: (channelParams: GroupChannelCreateParams) => Promise<GroupChannel>;
758
+ sdk: SendbirdGroupChat | SendbirdOpenChat;
759
+ userListQuery?(): UserListQuery;
760
+ onCreateChannel?(channel: GroupChannel): void;
761
+ step: number,
762
+ setStep: React.Dispatch<React.SetStateAction<number>>,
763
+ type: 'group' | 'supergroup' | 'broadcast',
764
+ setType: React.Dispatch<React.SetStateAction<'group' | 'supergroup' | 'broadcast'>>,
765
+ }
766
+
767
+ export interface CreateChannelUIProps {
768
+ onCancel?(): void;
769
+ renderStepOne?:(props: void) => React.ReactNode;
770
+ }
771
+
772
+ export interface CreateChannelProps extends CreateChannelProviderProps, CreateChannelUIProps {}
773
+
774
+ export interface InviteUsersProps {
775
+ onCancel?: () => void;
776
+ }
777
+
778
+ export interface SelectChannelTypeProps {
779
+ onCancel?(): void;
780
+ }
781
+
782
+ /**
783
+ * EditUserProfile
784
+ */
785
+ export interface EditUserProfileProps {
786
+ children?: React.ReactNode;
787
+ onCancel?(): void;
788
+ onThemeChange?(theme: string): void;
789
+ onEditProfile?(updatedUser: User): void;
790
+ }
791
+
792
+ export interface EditUserProfileProviderInterface {
793
+ onCancel?(): void;
794
+ onThemeChange?(theme: string): void;
795
+ onEditProfile?(updatedUser: User): void;
796
+ }
797
+ }
430
798
 
431
799
  declare module '@sendbird/uikit-react' {
432
- export const App: React.FunctionComponent<AppProps>;
433
- export const SendBirdProvider: React.FunctionComponent<SendBirdProviderProps>;
434
- export const sendBirdSelectors: sendBirdSelectorsInterface;
435
- export const ChannelList: React.FunctionComponent<ChannelListProps>;
436
- export const ChannelSettings: React.FunctionComponent<ChannelSettingsProps>;
437
- export const Channel: React.FunctionComponent<ChannelProps>
438
- export const OpenChannel: React.FunctionComponent<OpenChannelProps>
439
- export const OpenChannelSettings: React.FunctionComponent<OpenChannelSettingsProps>
440
- export const MessageSearch: React.FunctionComponent<MessageSearchProps>
800
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
801
+ export const App: React.FunctionComponent<SendbirdUIKitGlobal.AppProps>;
802
+ export const SendBirdProvider: React.FunctionComponent<SendbirdUIKitGlobal.SendbirdProviderProps>;
803
+ export const sendBirdSelectors: SendbirdUIKitGlobal.sendbirdSelectorsInterface;
804
+ export const ChannelList: React.FunctionComponent<SendbirdUIKitGlobal.ChannelListProps>;
805
+ export const ChannelSettings: React.FunctionComponent<SendbirdUIKitGlobal.ChannelSettingsProps>;
806
+ export const Channel: React.FunctionComponent<SendbirdUIKitGlobal.ChannelProps>
807
+ export const OpenChannel: React.FunctionComponent<SendbirdUIKitGlobal.OpenChannelProps>
808
+ export const OpenChannelSettings: React.FunctionComponent<SendbirdUIKitGlobal.OpenChannelSettingsProps>
809
+ export const MessageSearch: React.FunctionComponent<SendbirdUIKitGlobal.MessageSearchProps>
441
810
  export function withSendBird(
442
811
  ChildComp: React.Component | React.ElementType,
443
- mapStoreToProps?: (store: SendBirdState) => unknown
812
+ mapStoreToProps?: (store: SendbirdUIKitGlobal.SendBirdState) => unknown
444
813
  ): (props: unknown) => React.ReactNode;
445
- export function useSendbirdStateContext(): SendBirdState;
814
+ export function useSendbirdStateContext(): SendbirdUIKitGlobal.SendBirdState;
446
815
  }
447
816
 
448
817
  declare module '@sendbird/uikit-react/App' {
449
- const App: React.FunctionComponent<AppProps>
818
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
819
+ const App: React.FunctionComponent<SendbirdUIKitGlobal.AppProps>
450
820
  export default App;
451
821
  }
452
822
 
453
823
  declare module '@sendbird/uikit-react/SendbirdProvider' {
454
- const SendbirdProvider: React.FunctionComponent<SendBirdProviderProps>;
824
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
825
+ const SendbirdProvider: React.FunctionComponent<SendbirdUIKitGlobal.SendbirdProviderProps>;
455
826
  export default SendbirdProvider;
456
827
  }
457
828
 
458
- declare module '@sendbird/uikit-react/sendBirdSelectors' {
459
- const sendBirdSelectors: sendBirdSelectorsInterface;
829
+ declare module '@sendbird/uikit-react/sendbirdSelectors' {
830
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
831
+ const sendBirdSelectors: SendbirdUIKitGlobal.sendbirdSelectorsInterface;
460
832
  export default sendBirdSelectors;
461
833
  }
462
834
 
463
835
  declare module '@sendbird/uikit-react/useSendbirdStateContext' {
464
- function useSendbirdStateContext(): SendBirdState;
836
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
837
+ function useSendbirdStateContext(): SendbirdUIKitGlobal.SendBirdState;
465
838
  export default useSendbirdStateContext;
466
839
  }
467
840
 
468
- declare module '@sendbird/uikit-react/withSendBird' {
469
- function withSendBird(
841
+ declare module '@sendbird/uikit-react/withSendbird' {
842
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
843
+ function withSendbird(
470
844
  ChildComp: React.Component | React.ElementType,
471
- mapStoreToProps?: (store: SendBirdState) => unknown
845
+ mapStoreToProps?: (store: SendbirdUIKitGlobal.SendBirdState) => unknown
472
846
  ): (props: unknown) => React.ReactNode;
473
- export default withSendBird;
847
+ export default withSendbird;
474
848
  }
475
849
 
850
+ /** ChannelList */
476
851
  declare module '@sendbird/uikit-react/ChannelList' {
477
- const ChannelList: React.FunctionComponent<ChannelListProps>;
852
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
853
+ const ChannelList: React.FunctionComponent<SendbirdUIKitGlobal.ChannelListProps>;
478
854
  export default ChannelList;
479
855
  }
480
856
 
481
857
  declare module '@sendbird/uikit-react/ChannelList/context' {
482
- export const ChannelListProvider: React.FunctionComponent<ChannelListProviderProps>;
483
- export function useChannelListContext (): ChannelListProviderInterface;
484
- export function useChannelList (): ChannelListProviderInterface;
858
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
859
+ export const ChannelListProvider: React.FunctionComponent<SendbirdUIKitGlobal.ChannelListProviderProps>;
860
+ export function useChannelListContext (): SendbirdUIKitGlobal.ChannelListProviderInterface;
861
+ export function useChannelList (): SendbirdUIKitGlobal.ChannelListProviderInterface;
485
862
  }
486
863
 
487
864
  declare module '@sendbird/uikit-react/ChannelList/components/AddChannel' {
488
- const AddChannel: React.VoidFunctionComponent;
865
+ const AddChannel: React.FunctionComponent;
489
866
  export default AddChannel;
490
867
  }
491
868
 
492
869
  declare module '@sendbird/uikit-react/ChannelList/components/ChannelListUI' {
493
- const ChannelListUI: React.FunctionComponent<ChannelListUIProps>;
870
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
871
+ const ChannelListUI: React.FunctionComponent<SendbirdUIKitGlobal.ChannelListUIProps>;
494
872
  export default ChannelListUI;
495
873
  }
496
874
 
497
875
  declare module '@sendbird/uikit-react/ChannelList/components/ChannelListHeader' {
498
- const ChannelListHeader: React.FunctionComponent<ChannelListUIProps>;
876
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
877
+ const ChannelListHeader: React.FunctionComponent<SendbirdUIKitGlobal.ChannelListHeaderInterface>;
499
878
  export default ChannelListHeader;
500
879
  }
501
880
 
502
881
  declare module '@sendbird/uikit-react/ChannelList/components/ChannelPreview' {
503
- const ChannelPreview: React.FunctionComponent<ChannelPreviewInterface>;
882
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
883
+ const ChannelPreview: React.FunctionComponent<SendbirdUIKitGlobal.ChannelPreviewInterface>;
504
884
  export default ChannelPreview;
505
885
  }
506
886
 
507
887
  declare module '@sendbird/uikit-react/ChannelList/components/ChannelPreviewAction' {
508
- const ChannelPreviewAction: React.FunctionComponent<ChannelPreviewActionInterface>;
888
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
889
+ const ChannelPreviewAction: React.FunctionComponent<SendbirdUIKitGlobal.ChannelPreviewActionInterface>;
509
890
  export default ChannelPreviewAction;
510
891
  }
511
892
 
512
893
  declare module '@sendbird/uikit-react/ChannelSettings' {
513
- const ChannelSettings: React.FunctionComponent<ChannelSettingsProps>;
894
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
895
+ const ChannelSettings: React.FunctionComponent<SendbirdUIKitGlobal.ChannelSettingsProps>;
514
896
  export default ChannelSettings;
515
897
  }
516
898
 
517
899
  declare module '@sendbird/uikit-react/ChannelSettings/context' {
518
- export const ChannelSettingsProvider: React.FC<ChannelSettingsContextProps>;
519
- export const UseChannelSettingsType: () => ChannelSettingsProviderInterface;
900
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
901
+ export const ChannelSettingsProvider: React.FC<SendbirdUIKitGlobal.ChannelSettingsContextProps>;
902
+ export const useChannelSettingsContext: () => SendbirdUIKitGlobal.ChannelSettingsProviderInterface;
520
903
  }
521
904
 
522
- declare module '@sendbird/uikit-react/ChannelSettings/components/AdminPanel' {
523
- const AdminPanel: React.VoidFunctionComponent;
524
- export default AdminPanel;
905
+ declare module '@sendbird/uikit-react/ChannelSettings/components/ModerationPanel' {
906
+ const ModerationPanel: React.FunctionComponent;
907
+ export default ModerationPanel;
525
908
  }
526
909
 
527
910
  declare module '@sendbird/uikit-react/ChannelSettings/components/ChannelProfile' {
528
- const ChannelProfile: React.VoidFunctionComponent;
911
+ const ChannelProfile: React.FunctionComponent;
529
912
  export default ChannelProfile;
530
913
  }
531
914
 
532
915
  declare module '@sendbird/uikit-react/ChannelSettings/components/ChannelSettingsUI' {
533
- const ChannelSettingsUI: React.FC<ChannelSettingsUIProps>;
916
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
917
+ const ChannelSettingsUI: React.FC<SendbirdUIKitGlobal.ChannelSettingsUIProps>;
534
918
  export default ChannelSettingsUI;
535
919
  }
536
920
 
537
921
  declare module '@sendbird/uikit-react/ChannelSettings/components/EditDetailsModal' {
538
- const EditDetailsModal: React.FC<ChannelSettingsEditDetailsProps>;
922
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
923
+ const EditDetailsModal: React.FC<SendbirdUIKitGlobal.ChannelSettingsEditDetailsProps>;
539
924
  export default EditDetailsModal;
540
925
  }
541
926
 
542
927
  declare module '@sendbird/uikit-react/ChannelSettings/components/LeaveChannel' {
543
- const LeaveChannel: React.FC<LeaveChannelProps>;
928
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
929
+ const LeaveChannel: React.FC<SendbirdUIKitGlobal.LeaveChannelProps>;
544
930
  export default LeaveChannel;
545
931
  }
546
932
 
547
933
  declare module '@sendbird/uikit-react/ChannelSettings/components/UserListItem' {
548
- const UserListItem: React.FC<UserListItemProps>;
934
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
935
+ const UserListItem: React.FC<SendbirdUIKitGlobal.UserListItemProps>;
549
936
  export default UserListItem;
550
937
  }
551
938
 
552
939
  declare module '@sendbird/uikit-react/ChannelSettings/components/UserPanel' {
553
- const UserPanel: React.VoidFunctionComponent;
940
+ const UserPanel: React.FunctionComponent;
554
941
  export default UserPanel;
555
942
  }
556
943
 
557
944
  /**
558
945
  * Channel
559
946
  */
560
- interface RenderMessageProps {
561
- message: EveryMessage;
562
- chainTop: boolean;
563
- chainBottom: boolean;
564
- }
565
-
566
- type ChannelQueries = {
567
- messageListParams?: SendBird.MessageListParams;
568
- };
569
-
570
- type ChannelContextProps = {
571
- channelUrl: string;
572
- children?: React.ReactNode;
573
- useMessageGrouping?: boolean;
574
- useReaction?: boolean;
575
- showSearchIcon?: boolean;
576
- highlightedMessage?: number;
577
- startingPoint?: number;
578
- onBeforeSendUserMessage?(text: string, quotedMessage?: SendBird.UserMessage | SendBird.FileMessage): SendBird.UserMessageParams;
579
- onBeforeSendFileMessage?(file: File, quotedMessage?: SendBird.UserMessage | SendBird.FileMessage): SendBird.FileMessageParams;
580
- onBeforeUpdateUserMessage?(text: string): SendBird.UserMessageParams;
581
- onChatHeaderActionClick?(event: React.MouseEvent<HTMLElement>): void;
582
- onSearchClick?(): void;
583
- replyType?: ReplyType;
584
- queries?: ChannelQueries;
585
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
586
- disableUserProfile?: boolean;
587
- };
588
-
589
- interface ChannelUIProps {
590
- renderPlaceholderLoader?: () => React.ReactNode;
591
- renderPlaceholderInvalid?: () => React.ReactNode;
592
- renderPlaceholderEmpty?: () => React.ReactNode;
593
- renderChannelHeader?: () => React.ReactNode;
594
- renderMessage?: (props: RenderMessageProps) => React.ComponentType;
595
- renderMessageInput?: () => React.ReactNode;
596
- renderTypingIndicator?: () => React.ReactNode;
597
- renderCustomSeperator?: () => React.ReactNode;
598
- }
599
-
600
- type CoreMessageType = SendBird.AdminMessage | SendBird.UserMessage | SendBird.FileMessage;
601
-
602
- interface MessageStoreInterface {
603
- allMessages: CoreMessageType[];
604
- loading: boolean;
605
- initialized: boolean;
606
- unreadSince: string;
607
- isInvalid: boolean;
608
- currentGroupChannel: SendBird.GroupChannel;
609
- hasMorePrev: boolean;
610
- oldestMessageTimeStamp: number;
611
- hasMoreNext: boolean;
612
- latestMessageTimeStamp: number;
613
- emojiContainer: any;
614
- readStatus: any;
615
- }
616
-
617
- interface ChannelProviderInterface extends ChannelContextProps, ChannelContextProps {
618
- scrollToMessage?(createdAt: number, messageId: number): void;
619
- messageActionTypes: Record<string ,string>;
620
- quoteMessage: CoreMessageType;
621
- setQuoteMessage: React.Dispatch<React.SetStateAction<CoreMessageType>>;
622
- initialTimeStamp: number;
623
- setInitialTimeStamp: React.Dispatch<React.SetStateAction<number>>;
624
- animatedMessageId: number;
625
- highLightedMessageId: number;
626
- nicknamesMap: Map<string, string>;
627
- scrollRef: React.MutableRefObject<HTMLDivElement>;
628
- setAnimatedMessageId: React.Dispatch<React.SetStateAction<number>>;
629
- setHighLightedMessageId: React.Dispatch<React.SetStateAction<number>>;
630
- messageInputRef: React.MutableRefObject<HTMLInputElement>,
631
- toggleReaction(message: SendBird.UserMessage | SendBird.FileMessage, emojiKey: string, isReacted: boolean): void,
632
- }
633
-
634
- type FileViewerProps = {
635
- onCancel:() => void;
636
- message: ClientFileMessage;
637
- }
638
-
639
- type MessageUIProps = {
640
- message: EveryMessage;
641
- hasSeparator?: boolean;
642
- chainTop?: boolean;
643
- chainBottom?: boolean;
644
- handleScroll: () => void;
645
- // for extending
646
- renderMessage?: (props: RenderMessageProps) => React.ReactNode;
647
- renderCustomSeperator?: () => React.ReactNode;
648
- renderEditInput?: () => React.ReactNode;
649
- renderMessageContent?: () => React.ReactNode;
650
- };
651
-
652
- type MessageListProps = {
653
- renderMessage?: (props: RenderMessageProps) => React.ReactNode;
654
- renderPlaceholderEmpty?: () => React.ReactNode;
655
- renderCustomSeperator?: () => React.ReactNode;
656
- };
657
-
658
- type SuggestedMentionListProps = {
659
- targetNickname: string;
660
- memberListQuery?: Record<string, string>;
661
- onUserItemClick?: (member: SendBird.User) => void;
662
- onFocusItemChange?: (member: SendBird.User) => void;
663
- onFetchUsers?: (users: Array<SendBird.User>) => void;
664
- renderUserMentionItem?: (props: { user: SendBird.User }) => JSX.Element;
665
- ableAddMention: boolean;
666
- maxMentionCount?: number;
667
- maxSuggestionCount?: number;
668
- inputEvent?: React.KeyboardEvent<HTMLDivElement>;
669
- };
670
-
671
- type SuggestedUserMentionItemProps = {
672
- member: SendBird.User | SendBird.Member;
673
- isFocused?: boolean;
674
- onClick?: (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
675
- onMouseOver?: (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
676
- renderUserMentionItem?: (props: { user: SendBird.User | SendBird.Member }) => JSX.Element;
677
- };
678
-
679
- interface UnreadCountProps {
680
- count: number;
681
- time: string;
682
- onClick(): void;
683
- }
684
-
685
- interface ChannelProps extends ChannelContextProps, ChannelUIProps {
686
- }
687
-
688
- interface RemoveMessageProps {
689
- onCancel: () => void;
690
- message: EveryMessage;
691
- }
692
-
693
947
  declare module '@sendbird/uikit-react/Channel' {
694
- const Channel: React.FC<ChannelProps>;
948
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
949
+ const Channel: React.FC<SendbirdUIKitGlobal.ChannelProps>;
695
950
  export default Channel;
696
951
  }
697
952
 
698
953
  declare module '@sendbird/uikit-react/Channel/context' {
699
- export const ChannelProvider: React.FunctionComponent<ChannelContextProps>;
700
- export function useChannel(): ChannelProviderInterface;
954
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
955
+ export const ChannelProvider: React.FunctionComponent<SendbirdUIKitGlobal.ChannelContextProps>;
956
+ export function useChannelContext(): SendbirdUIKitGlobal.ChannelProviderInterface;
701
957
  }
702
958
 
703
959
  declare module '@sendbird/uikit-react/Channel/components/ChannelHeader' {
704
- const ChannelHeader: React.VoidFunctionComponent;
960
+ const ChannelHeader: React.FunctionComponent;
705
961
  export default ChannelHeader;
706
962
  }
707
963
 
708
964
  declare module '@sendbird/uikit-react/Channel/components/ChannelUI' {
709
- const ChannelUI: React.FunctionComponent<ChannelUIProps>;
965
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
966
+ const ChannelUI: React.FunctionComponent<SendbirdUIKitGlobal.ChannelUIProps>;
710
967
  export default ChannelUI;
711
968
  }
712
969
 
713
970
  declare module '@sendbird/uikit-react/Channel/components/FileViewer' {
714
- const FileViewer: React.FunctionComponent<FileViewerProps>;
971
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
972
+ const FileViewer: React.FunctionComponent<SendbirdUIKitGlobal.FileViewerProps>;
715
973
  export default FileViewer;
716
974
  }
717
975
 
718
976
  declare module '@sendbird/uikit-react/Channel/components/FrozenNotification' {
719
- const FrozenNotification: React.VoidFunctionComponent;
977
+ const FrozenNotification: React.FunctionComponent;
720
978
  export default FrozenNotification;
721
979
  }
722
980
 
723
981
  declare module '@sendbird/uikit-react/Channel/components/Message' {
724
- const Message: React.FunctionComponent<MessageUIProps>;
982
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
983
+ const Message: React.FunctionComponent<SendbirdUIKitGlobal.MessageUIProps>;
725
984
  export default Message;
726
985
  }
727
986
 
728
987
  declare module '@sendbird/uikit-react/Channel/components/MessageInput' {
729
- const MessageInput: React.VoidFunctionComponent;
988
+ const MessageInput: React.FunctionComponent;
730
989
  export default MessageInput;
731
990
  }
732
991
 
733
992
  declare module '@sendbird/uikit-react/Channel/components/MessageList' {
734
- const MessageList: React.FunctionComponent<MessageListProps>;
993
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
994
+ const MessageList: React.FunctionComponent<SendbirdUIKitGlobal.MessageListProps>;
735
995
  export default MessageList;
736
996
  }
737
997
 
738
998
  declare module '@sendbird/uikit-react/Channel/components/SuggestedMentionList' {
739
- const SuggestedMentionList: React.FunctionComponent<SuggestedMentionListProps>;
999
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1000
+ const SuggestedMentionList: React.FunctionComponent<SendbirdUIKitGlobal.SuggestedMentionListProps>;
740
1001
  export default SuggestedMentionList;
741
1002
  }
742
1003
 
743
1004
  declare module '@sendbird/uikit-react/Channel/components/RemoveMessageModal' {
744
- const RemoveMessageModal: React.FunctionComponent<RemoveMessageProps>;
1005
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1006
+ const RemoveMessageModal: React.FunctionComponent<SendbirdUIKitGlobal.RemoveMessageProps>;
745
1007
  export default RemoveMessageModal;
746
1008
  }
747
1009
 
748
1010
  declare module '@sendbird/uikit-react/Channel/components/TypingIndicator' {
749
- const TypingIndicator: React.VoidFunctionComponent;
1011
+ const TypingIndicator: React.FunctionComponent;
750
1012
  export default TypingIndicator;
751
1013
  }
752
1014
 
753
1015
  declare module '@sendbird/uikit-react/Channel/components/UnreadCount' {
754
- const UnreadCount: React.FunctionComponent<UnreadCountProps>;
1016
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1017
+ const UnreadCount: React.FunctionComponent<SendbirdUIKitGlobal.UnreadCountProps>;
755
1018
  export default UnreadCount;
756
1019
  }
757
1020
 
758
- type OpenChannelQueries = {
759
- // https://sendbird.github.io/core-sdk-javascript/module-model_params_messageListParams-MessageListParams.html
760
- messageListParams?: {
761
- replyType?: string,
762
- messageType?: string,
763
- prevResultSize?: number,
764
- nextResultSize?: number,
765
- reverse?: boolean,
766
- isInclusive?: boolean,
767
- includeMetaArray?: boolean,
768
- // UIKit doesn't support emoji reaction in OpenChannel
769
- // includeReactions?: boolean,
770
- // UIKit doesn't support message threading in OpenChannel
771
- // includeThreadInfo?: boolean,
772
- includePollDetails?: boolean,
773
- includeParentMessageInfo?: boolean,
774
- showSubchannelMessagesOnly?: boolean,
775
- customTypes?: Array<string>,
776
- senderUserIds?: Array<string>,
777
- },
778
- };
779
-
780
- interface OpenChannelProviderProps {
781
- channelUrl: string;
782
- children?: React.ReactNode;
783
- useMessageGrouping?: boolean;
784
- queries?: OpenChannelQueries;
785
- messageLimit?: number;
786
- onBeforeSendUserMessage?(text: string): SendBird.UserMessageParams;
787
- onBeforeSendFileMessage?(file_: File): SendBird.FileMessageParams;
788
- onChatHeaderActionClick?(): void;
789
- disableUserProfile?: boolean;
790
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
791
- }
792
-
793
- interface OpenChannelMessagesState {
794
- allMessages: Array<EveryMessage>;
795
- loading: boolean;
796
- initialized: boolean;
797
- currentOpenChannel: SendBird.OpenChannel;
798
- isInvalid: boolean;
799
- hasMore: boolean;
800
- lastMessageTimestamp: number;
801
- frozen: boolean;
802
- operators: Array<SendBird.User>;
803
- participants: Array<SendBird.User>;
804
- bannedParticipantIds: Array<string>;
805
- mutedParticipantIds: Array<string>;
806
- }
807
-
808
- interface OpenChannelInterface extends OpenChannelProviderProps, OpenChannelMessagesState {
809
- // derived/utils
810
- messageInputRef: React.RefObject<HTMLInputElement>;
811
- conversationScrollRef: React.RefObject<HTMLDivElement>;
812
- disabled: boolean;
813
- amIBanned: boolean;
814
- amIMuted: boolean;
815
- amIOperator: boolean;
816
- fetchMore: boolean;
817
- checkScrollBottom: () => boolean;
818
- onScroll: (callback: () => void) => void;
819
- }
820
-
821
- interface OpenChannelUIProps {
822
- renderMessage?: (props: RenderMessageProps) => React.ReactNode;
823
- renderHeader?: () => React.ReactNode;
824
- renderInput?: () => React.ReactNode;
825
- renderPlaceHolderEmptyList?: () => React.ReactNode;
826
- renderPlaceHolderError?: () => React.ReactNode;
827
- renderPlaceHolderLoading?: () => React.ReactNode;
828
- }
829
-
830
- interface OpenChannelProps extends OpenChannelProviderProps, OpenChannelUIProps {
831
- }
832
-
833
- type OpenchannelMessageListProps = {
834
- renderMessage?: (props: RenderMessageProps) => React.ReactNode;
835
- renderPlaceHolderEmptyList?: () => React.ReactNode;
836
- }
837
-
838
- type OpenChannelMessageProps = {
839
- renderMessage?: (props: RenderMessageProps) => React.ReactNode;
840
- message: EveryMessage;
841
- chainTop?: boolean;
842
- chainBottom?: boolean;
843
- hasSeparator?: boolean;
844
- editDisabled?: boolean;
845
- };
846
-
1021
+ /**
1022
+ * OpenChannel
1023
+ */
847
1024
  declare module '@sendbird/uikit-react/OpenChannel' {
848
- const OpenChannel: React.FC<OpenChannelProps>;
1025
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1026
+ const OpenChannel: React.FC<SendbirdUIKitGlobal.OpenChannelProps>;
849
1027
  export default OpenChannel;
850
1028
  }
851
1029
 
852
1030
  declare module '@sendbird/uikit-react/OpenChannel/context' {
853
- export const OpenChannelProvider: React.FunctionComponent<OpenChannelProviderProps>;
854
- export function useOpenChannel(): OpenChannelInterface;
1031
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1032
+ export const OpenChannelProvider: React.FunctionComponent<SendbirdUIKitGlobal.OpenChannelProviderProps>;
1033
+ export function useOpenChannelContext(): SendbirdUIKitGlobal.OpenChannelInterface;
855
1034
  }
856
1035
 
857
1036
  declare module '@sendbird/uikit-react/OpenChannel/components/FrozenChannelNotification' {
858
- const FrozenChannelNotification: React.VoidFunctionComponent;
1037
+ const FrozenChannelNotification: React.FunctionComponent;
859
1038
  export default FrozenChannelNotification;
860
1039
  }
861
1040
 
862
1041
  declare module '@sendbird/uikit-react/OpenChannel/components/OpenChannelHeader' {
863
- const OpenChannelHeader: React.VoidFunctionComponent;
1042
+ const OpenChannelHeader: React.FunctionComponent;
864
1043
  export default OpenChannelHeader;
865
1044
  }
866
1045
 
867
1046
  declare module '@sendbird/uikit-react/OpenChannel/components/OpenChannelInput' {
868
- const OpenChannelInput: React.VoidFunctionComponent;
1047
+ const OpenChannelInput: React.FunctionComponent;
869
1048
  export default OpenChannelInput;
870
1049
 
871
1050
  }
872
1051
 
873
1052
  declare module '@sendbird/uikit-react/OpenChannel/components/OpenChannelMessage' {
874
- const OpenChannelMessage: React.FC<OpenChannelMessageProps>;
1053
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1054
+ const OpenChannelMessage: React.FC<SendbirdUIKitGlobal.OpenChannelMessageProps>;
875
1055
  export default OpenChannelMessage;
876
-
877
1056
  }
878
1057
 
879
1058
  declare module '@sendbird/uikit-react/OpenChannel/components/OpenChannelMessageList' {
880
- const OpenChannelMessageList: React.FC<OpenchannelMessageListProps>;
1059
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1060
+ const OpenChannelMessageList: React.FC<SendbirdUIKitGlobal.OpenchannelMessageListProps>;
881
1061
  export default OpenChannelMessageList;
882
1062
  }
883
1063
 
884
1064
  declare module '@sendbird/uikit-react/OpenChannel/components/OpenChannelUI' {
885
- const OpenChannelUI: React.FC<OpenChannelUIProps>;
1065
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1066
+ const OpenChannelUI: React.FC<SendbirdUIKitGlobal.OpenChannelUIProps>;
886
1067
  export default OpenChannelUI;
887
1068
  }
888
1069
 
889
- interface OpenChannelSettingsContextProps {
890
- channelUrl: string;
891
- children?: React.ReactNode;
892
- onCloseClick?(): void;
893
- onBeforeUpdateChannel?(currentTitle: string, currentImg: File, data: string): SendBird.OpenChannelParams;
894
- onChannelModified?(channel: SendBird.OpenChannel): void;
895
- onDeleteChannel?(channel: SendBird.OpenChannel): void;
896
- disableUserProfile?: boolean;
897
- renderUserProfile?: (props: RenderUserProfileProps) => React.ReactNode;
898
- }
899
-
900
- interface OpenChannelSettingsUIProps {
901
- renderOperatorUI?: () => React.ReactNode;
902
- renderParticipantList?: () => React.ReactNode;
903
- }
904
-
905
- interface OpenChannelSettingsProps extends OpenChannelSettingsContextProps, OpenChannelSettingsUIProps {
906
- }
907
-
908
- interface OpenChannelSettingsContextType extends OpenChannelSettingsContextProps {
909
- channelUrl: string;
910
- channel?: SendBird.OpenChannel;
911
- setChannel?: React.Dispatch<React.SetStateAction<SendBird.OpenChannel>>;
912
- }
913
-
914
- interface OperatorUIProps {
915
- renderChannelProfile?: () => React.ReactNode;
916
- }
917
-
918
- interface OpenChannelEditDetailsProps {
919
- onCancel(): void;
920
- }
921
-
1070
+ /**
1071
+ * OpenChannelSettings
1072
+ */
922
1073
  declare module '@sendbird/uikit-react/OpenChannelSettings' {
923
- const OpenChannelSettings: React.FC<OpenChannelSettingsProps>;
1074
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1075
+ const OpenChannelSettings: React.FC<SendbirdUIKitGlobal.OpenChannelSettingsProps>;
924
1076
  export default OpenChannelSettings;
925
1077
  }
926
1078
 
927
1079
  declare module '@sendbird/uikit-react/OpenChannelSettings/context' {
928
- export const useOpenChannelSettings: () => OpenChannelSettingsContextType;
929
- export const OpenChannelSettingsProvider: React.FC<OpenChannelSettingsContextProps>;
1080
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1081
+ export const useOpenChannelSettingsContext: () => SendbirdUIKitGlobal.OpenChannelSettingsContextType;
1082
+ export const OpenChannelSettingsProvider: React.FC<SendbirdUIKitGlobal.OpenChannelSettingsContextProps>;
930
1083
  }
931
1084
 
932
1085
  declare module '@sendbird/uikit-react/OpenChannelSettings/components/EditDetailsModal' {
933
- const EditDetailsModal: React.FC<OpenChannelEditDetailsProps>;
1086
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1087
+ const EditDetailsModal: React.FC<SendbirdUIKitGlobal.OpenChannelEditDetailsProps>;
934
1088
  export default EditDetailsModal;
935
1089
  }
936
1090
 
937
1091
  declare module '@sendbird/uikit-react/OpenChannelSettings/components/OpenChannelSettingsUI' {
938
- const OpenChannelSettingsUI: React.FC<OpenChannelSettingsUIProps>;
1092
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1093
+ const OpenChannelSettingsUI: React.FC<SendbirdUIKitGlobal.OpenChannelSettingsUIProps>;
939
1094
  export default OpenChannelSettingsUI;
940
1095
  }
941
1096
 
942
1097
  declare module '@sendbird/uikit-react/OpenChannelSettings/components/OperatorUI' {
943
- const OperatorUI: React.FC<OperatorUIProps>;
1098
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1099
+ const OperatorUI: React.FC<SendbirdUIKitGlobal.OperatorUIProps>;
944
1100
  export default OperatorUI;
945
1101
  }
946
1102
 
947
1103
  declare module '@sendbird/uikit-react/OpenChannelSettings/components/ParticipantUI' {
948
- const ParticipantUI: React.VoidFunctionComponent;
1104
+ const ParticipantUI: React.FunctionComponent;
949
1105
  export default ParticipantUI;
950
1106
  }
951
1107
 
952
- interface MessageSearchProviderProps {
953
- channelUrl: string;
954
- children?: React.ReactNode;
955
- searchString?: string;
956
- requestString?: string;
957
- messageSearchQuery?: SendBird.MessageSearchQueryOptions;
958
- onResultLoaded?(messages?: Array<ClientSentMessages>, error?: SendBird.SendBirdError): void;
959
- onResultClick?(message: ClientSentMessages): void;
960
- }
961
-
962
- type MessageSearchScrollCallbackReturn = (
963
- callback: (
964
- messages: Array<SendBird.UserMessage | SendBird.FileMessage | SendBird.AdminMessage>,
965
- /* eslint-disable @typescript-eslint/no-explicit-any*/
966
- error: any,
967
- ) => void
968
- ) => void;
969
-
970
- interface MessageSearchProviderInterface extends MessageSearchProviderProps {
971
- retryCount: number;
972
- setRetryCount: React.Dispatch<React.SetStateAction<number>>;
973
- selectedMessageId: number;
974
- setSelectedMessageId: React.Dispatch<React.SetStateAction<number>>;
975
- messageSearchDispatcher: ({ type: string, payload: any }) => void;
976
- scrollRef: React.MutableRefObject<HTMLDivElement>;
977
- allMessages: Array<ClientFileMessage | ClientUserMessage>;
978
- loading: boolean;
979
- isInvalid: boolean;
980
- currentChannel: SendBird.GroupChannel;
981
- currentMessageSearchQuery: SendBird.MessageSearchQuery;
982
- hasMoreResult: boolean;
983
- onScroll: MessageSearchScrollCallbackReturn;
984
- handleRetryToConnect: () => void;
985
- handleOnScroll: (e: React.BaseSyntheticEvent) => void;
986
- }
987
-
988
- interface MessageSearchUIProps {
989
- renderPlaceHolderError?: (props: void) => React.ReactNode;
990
- renderPlaceHolderLoading?: (props: void) => React.ReactNode;
991
- renderPlaceHolderNoString?: (props: void) => React.ReactNode;
992
- renderPlaceHolderEmptyList?: (props: void) => React.ReactNode;
993
- renderSearchItem?(
994
- {
995
- message,
996
- onResultClick,
997
- }: {
998
- message: ClientSentMessages,
999
- onResultClick?: (message: ClientSentMessages) => void,
1000
- }
1001
- ): JSX.Element;
1002
- }
1003
-
1004
- interface MessageSearchProps extends MessageSearchUIProps, MessageSearchProviderProps {}
1005
-
1108
+ /**
1109
+ * MessageSearch
1110
+ */
1006
1111
  declare module '@sendbird/uikit-react/MessageSearch' {
1007
- const MessageSearch: React.FC<MessageSearchProps>;
1112
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1113
+ const MessageSearch: React.FC<SendbirdUIKitGlobal.MessageSearchProps>;
1008
1114
  export default MessageSearch;
1009
1115
  }
1010
1116
 
1011
1117
  declare module '@sendbird/uikit-react/MessageSearch/context' {
1012
- export const useMessageSearch: () => MessageSearchProviderInterface;
1013
- export const MessageSearchProvider: React.FC<MessageSearchProviderProps>;
1118
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1119
+ export const useMessageSearchContext: () => SendbirdUIKitGlobal.MessageSearchProviderInterface;
1120
+ export const MessageSearchProvider: React.FC<SendbirdUIKitGlobal.MessageSearchProviderProps>;
1014
1121
  }
1015
1122
 
1016
1123
  declare module '@sendbird/uikit-react/MessageSearch/components/MessageSearchUI' {
1017
- const MessageSearchUI: React.FC<MessageSearchUIProps>;
1124
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1125
+ const MessageSearchUI: React.FC<SendbirdUIKitGlobal.MessageSearchUIProps>;
1018
1126
  export default MessageSearchUI;
1019
1127
  }
1020
1128
 
1021
- interface CreateChannelProviderProps {
1022
- children?: React.ReactNode;
1023
- onCreateChannel(channel: SendBird.GroupChannel): void;
1024
- onBeforeCreateChannel?(users: Array<string>): SendBird.GroupChannelParams;
1025
- userListQuery?(): UserListQuery;
1026
- }
1027
-
1028
-
1029
- interface CreateChannelContextInterface {
1030
- onBeforeCreateChannel?(users: Array<string>): SendBird.GroupChannelParams;
1031
- createChannel: (channelParams: SendBird.GroupChannelParams) => Promise<SendBird.GroupChannel>;
1032
- sdk: SendBird.SendBirdInstance;
1033
- userListQuery?(): UserListQuery;
1034
- onCreateChannel?(channel: SendBird.GroupChannel): void;
1035
- step: number,
1036
- setStep: React.Dispatch<React.SetStateAction<number>>,
1037
- type: 'group' | 'supergroup' | 'broadcast',
1038
- setType: React.Dispatch<React.SetStateAction<'group' | 'supergroup' | 'broadcast'>>,
1039
- }
1040
-
1041
- interface CreateChannelUIProps {
1042
- onCancel?(): void;
1043
- renderStepOne?:(props: void) => React.ReactNode;
1044
- }
1045
-
1046
- interface CreateChannelProps extends CreateChannelProviderProps, CreateChannelUIProps {}
1047
-
1048
- interface InviteMembersProps {
1049
- onCancel?: () => void;
1050
- }
1051
-
1052
- interface SelectChannelTypeProps {
1053
- onCancel?(): void;
1054
- }
1055
-
1129
+ /**
1130
+ * CreateChannel
1131
+ */
1056
1132
  declare module '@sendbird/uikit-react/CreateChannel' {
1057
- const CreateChannel: React.FC<CreateChannelProps>;
1133
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1134
+ const CreateChannel: React.FC<SendbirdUIKitGlobal.CreateChannelProps>;
1058
1135
  export default CreateChannel;
1059
1136
  }
1060
1137
 
1061
1138
  declare module '@sendbird/uikit-react/CreateChannel/context' {
1062
- export const CreateChannelProvider: React.FC<CreateChannelProviderProps>;
1063
- export function useCreateChannelContext (): CreateChannelContextInterface;
1139
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1140
+ export const CreateChannelProvider: React.FC<SendbirdUIKitGlobal.CreateChannelProviderProps>;
1141
+ export function useCreateChannelContext (): SendbirdUIKitGlobal.CreateChannelContextInterface;
1064
1142
  }
1065
1143
 
1066
1144
  declare module '@sendbird/uikit-react/CreateChannel/components/CreateChannelUI' {
1067
- const CreateChannelUI: React.FC<CreateChannelUIProps>;
1145
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1146
+ const CreateChannelUI: React.FC<SendbirdUIKitGlobal.CreateChannelUIProps>;
1068
1147
  export default CreateChannelUI;
1069
1148
  }
1070
1149
 
1071
- declare module '@sendbird/uikit-react/CreateChannel/components/InviteMembers' {
1072
- const InviteMembers: React.FC<InviteMembersProps>;
1073
- export default InviteMembers;
1150
+ declare module '@sendbird/uikit-react/CreateChannel/components/InviteUsers' {
1151
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1152
+ const InviteUsers: React.FC<SendbirdUIKitGlobal.InviteUsersProps>;
1153
+ export default InviteUsers;
1074
1154
  }
1075
1155
 
1076
1156
  declare module '@sendbird/uikit-react/CreateChannel/components/SelectChannelType' {
1077
- const SelectChannelType: React.FC<SelectChannelTypeProps>;
1157
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1158
+ const SelectChannelType: React.FC<SendbirdUIKitGlobal.SelectChannelTypeProps>;
1078
1159
  export default SelectChannelType;
1079
1160
  }
1080
1161
 
1081
- interface EditUserProfileProps {
1082
- children?: React.ReactNode;
1083
- onCancel?(): void;
1084
- onThemeChange?(theme: string): void;
1085
- onEditProfile?(updatedUser: SendBird.User): void;
1086
- }
1087
-
1088
- interface EditUserProfileProviderInterface {
1089
- onCancel?(): void;
1090
- onThemeChange?(theme: string): void;
1091
- onEditProfile?(updatedUser: SendBird.User): void;
1092
- }
1093
-
1162
+ /**
1163
+ * EditUserProfile
1164
+ */
1094
1165
  declare module '@sendbird/uikit-react/EditUserProfile' {
1095
- const EditProfile: React.FC<EditUserProfileProps>;
1166
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1167
+ const EditProfile: React.FC<SendbirdUIKitGlobal.EditUserProfileProps>;
1096
1168
  export default EditProfile;
1097
1169
  }
1098
1170
 
1099
1171
  declare module '@sendbird/uikit-react/EditUserProfile/context' {
1100
- export const EditUserProfileProvider: React.FC<EditUserProfileProps>;
1101
- export function useEditUserProfileProvider (): EditUserProfileProviderInterface;
1172
+ import SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1173
+ export const EditUserProfileProvider: React.FC<SendbirdUIKitGlobal.EditUserProfileProps>;
1174
+ export function useEditUserProfileProviderContext (): SendbirdUIKitGlobal.EditUserProfileProviderInterface;
1102
1175
  }
1103
1176
 
1104
1177
  declare module '@sendbird/uikit-react/EditUserProfile/components/EditUserProfileUI' {
1105
- const EditUserProfileUI: React.VoidFunctionComponent;
1178
+ const EditUserProfileUI: React.FunctionComponent;
1106
1179
  export default EditUserProfileUI;
1107
1180
  }
1108
1181
 
@@ -1129,12 +1202,13 @@ declare module '@sendbird/uikit-react/ui/AccordionGroup' {
1129
1202
  }
1130
1203
 
1131
1204
  declare module '@sendbird/uikit-react/ui/AdminMessage' {
1205
+ import type { AdminMessage } from '@sendbird/chat/message';
1132
1206
  interface AdminMessageProps {
1133
1207
  className?: string,
1134
- message: SendBird.AdminMessage,
1208
+ message: AdminMessage,
1135
1209
  }
1136
- const AdminMessage: React.FC<AdminMessageProps>;
1137
- export default AdminMessage;
1210
+ const AdminMessageComponent: React.FC<AdminMessageProps>;
1211
+ export default AdminMessageComponent;
1138
1212
  }
1139
1213
 
1140
1214
  declare module '@sendbird/uikit-react/ui/Avatar' {
@@ -1184,8 +1258,9 @@ declare module '@sendbird/uikit-react/ui/Button' {
1184
1258
  }
1185
1259
 
1186
1260
  declare module '@sendbird/uikit-react/ui/ChannelAvatar' {
1261
+ import type { GroupChannel } from '@sendbird/chat/groupChannel'
1187
1262
  interface ChannelAvatarProps {
1188
- channel: SendBird.GroupChannel;
1263
+ channel: GroupChannel;
1189
1264
  userId: string;
1190
1265
  theme: string;
1191
1266
  width?: number,
@@ -1196,8 +1271,9 @@ declare module '@sendbird/uikit-react/ui/ChannelAvatar' {
1196
1271
  }
1197
1272
 
1198
1273
  declare module '@sendbird/uikit-react/ui/OpenChannelAvatar' {
1274
+ import type { OpenChannel } from '@sendbird/chat/OpenChannel'
1199
1275
  interface OpenChannelAvatarProps {
1200
- channel: SendBird.OpenChannel;
1276
+ channel: OpenChannel;
1201
1277
  theme: string;
1202
1278
  height?: number;
1203
1279
  width?: number;
@@ -1207,9 +1283,11 @@ declare module '@sendbird/uikit-react/ui/OpenChannelAvatar' {
1207
1283
  }
1208
1284
 
1209
1285
  declare module '@sendbird/uikit-react/ui/ChannelPreview' {
1286
+ import type { User } from '@sendbird/chat';
1287
+ import type { GroupChannel } from '@sendbird/chat/groupChannel';
1210
1288
  interface ChannelPreviewProps {
1211
- channel?: SendBird.GroupChannel,
1212
- currentUser?: SendBird.User,
1289
+ channel?: GroupChannel,
1290
+ currentUser?: User,
1213
1291
  isActive?: boolean,
1214
1292
  ChannelAction: React.ReactElement,
1215
1293
  theme?: 'light' | 'dark',
@@ -1221,9 +1299,11 @@ declare module '@sendbird/uikit-react/ui/ChannelPreview' {
1221
1299
  }
1222
1300
 
1223
1301
  declare module '@sendbird/uikit-react/ui/ChatHeader' {
1302
+ import type { User } from '@sendbird/chat';
1303
+ import type { GroupChannel } from '@sendbird/chat/groupChannel';
1224
1304
  interface ChatHeaderProps {
1225
- currentGroupChannel?: SendBird.GroupChannel;
1226
- currentUser?: SendBird.User;
1305
+ currentGroupChannel?: GroupChannel;
1306
+ currentUser?: User;
1227
1307
  title?: string;
1228
1308
  subTitle?: string;
1229
1309
  isMuted?: boolean;
@@ -1247,7 +1327,7 @@ declare module '@sendbird/uikit-react/ui/Checkbox' {
1247
1327
  }
1248
1328
 
1249
1329
  declare module '@sendbird/uikit-react/ui/ConnectionStatus' {
1250
- const ConnectionStatus: React.VoidFunctionComponent;
1330
+ const ConnectionStatus: React.FunctionComponent;
1251
1331
  export default ConnectionStatus;
1252
1332
  }
1253
1333
 
@@ -1291,19 +1371,22 @@ declare module '@sendbird/uikit-react/ui/Dropdown' {
1291
1371
  }
1292
1372
 
1293
1373
  declare module '@sendbird/uikit-react/ui/EmojiReactions' {
1374
+ import type { EmojiCategory } from '@sendbird/chat';
1375
+ import type { FileMessage, UserMessage } from '@sendbird/chat/message';
1376
+
1294
1377
  interface EmojiContainer {
1295
- emojiCategories: Array<SendBird.EmojiCategory>;
1378
+ emojiCategories: Array<EmojiCategory>;
1296
1379
  emojiHash: string;
1297
1380
  }
1298
1381
  interface EmojiReactionsProps {
1299
1382
  className?: string | Array<string>;
1300
1383
  userId: string;
1301
- message: SendBird.UserMessage | SendBird.FileMessage;
1384
+ message: UserMessage | FileMessage;
1302
1385
  emojiContainer: EmojiContainer;
1303
1386
  memberNicknamesMap: Map<string, string>;
1304
1387
  spaceFromTrigger?: Record<string, unknown>;
1305
1388
  isByMe?: boolean;
1306
- toggleReaction?: (message: SendBird.UserMessage | SendBird.FileMessage, key: string, byMe: boolean) => void;
1389
+ toggleReaction?: (message: UserMessage | FileMessage, key: string, byMe: boolean) => void;
1307
1390
  }
1308
1391
  const EmojiReactions: React.FC<EmojiReactionsProps>;
1309
1392
  export default EmojiReactions;
@@ -1311,9 +1394,11 @@ declare module '@sendbird/uikit-react/ui/EmojiReactions' {
1311
1394
  }
1312
1395
 
1313
1396
  declare module '@sendbird/uikit-react/ui/FileMessageItemBody' {
1397
+ import type { FileMessage } from '@sendbird/chat/message';
1398
+
1314
1399
  interface FileMessageItemBodyProps {
1315
1400
  className?: string | Array<string>;
1316
- message: SendBird.FileMessage;
1401
+ message: FileMessage;
1317
1402
  isByMe?: boolean;
1318
1403
  mouseHover?: boolean;
1319
1404
  }
@@ -1323,8 +1408,10 @@ declare module '@sendbird/uikit-react/ui/FileMessageItemBody' {
1323
1408
  }
1324
1409
 
1325
1410
  declare module '@sendbird/uikit-react/ui/FileViewer' {
1411
+ import type { FileMessage } from '@sendbird/chat/message';
1412
+
1326
1413
  interface FileViewerBodyProps {
1327
- message: SendBird.FileMessage;
1414
+ message: FileMessage;
1328
1415
  isByMe?: boolean;
1329
1416
  onClose?: () => void,
1330
1417
  onDelete?: () => void,
@@ -1447,31 +1534,37 @@ declare module '@sendbird/uikit-react/ui/MentionLabel' {
1447
1534
  }
1448
1535
 
1449
1536
  declare module '@sendbird/uikit-react/ui/MessageContent' {
1537
+ import type { GroupChannel, Member } from '@sendbird/chat/groupChannel';
1538
+ import type { EmojiContainer } from '@sendbird/chat';
1539
+ import type { AdminMessage, FileMessage, UserMessage } from '@sendbird/chat/message';
1540
+ import type SenbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1450
1541
  interface MessageContentProps {
1451
1542
  className?: string | Array<string>;
1452
1543
  userId: string;
1453
- channel: SendBird.GroupChannel;
1454
- message: CoreMessageType;
1544
+ channel: GroupChannel;
1545
+ message: AdminMessage | FileMessage | UserMessage;
1455
1546
  disabled?: boolean;
1456
1547
  chainTop?: boolean;
1457
1548
  chainBottom?: boolean;
1458
1549
  useReaction?: boolean;
1459
- replyType?: ReplyType;
1550
+ replyType?: SenbirdUIKitGlobal.ReplyType;
1460
1551
  nicknamesMap?: Map<string, string>;
1461
- emojiContainer?: SendBird.EmojiContainer;
1552
+ emojiContainer?: EmojiContainer;
1462
1553
  scrollToMessage?: (createdAt: number, messageId: number) => void;
1463
1554
  showEdit?: (bool: boolean) => void;
1464
1555
  showRemove?: (bool: boolean) => void;
1465
1556
  showFileViewer?: (bool: boolean) => void;
1466
- resendMessage?: (message: SendBird.UserMessage | SendBird.FileMessage) => void;
1467
- toggleReaction?: (message: SendBird.UserMessage | SendBird.FileMessage, reactionKey: string, isReacted: boolean) => void;
1468
- setQuoteMessage?: (message: SendBird.UserMessage | SendBird.FileMessage) => void;
1557
+ resendMessage?: (message: UserMessage | FileMessage) => void;
1558
+ toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;
1559
+ setQuoteMessage?: (message: UserMessage | FileMessage) => void;
1469
1560
  }
1470
1561
  const MessageContent: React.FC<MessageContentProps>;
1471
1562
  export default MessageContent;
1472
1563
  }
1473
1564
 
1474
1565
  declare module '@sendbird/uikit-react/ui/MessageInput' {
1566
+ import type { User } from '@sendbird/chat';
1567
+
1475
1568
  interface MessageInputProps {
1476
1569
  className?: string[],
1477
1570
  isEdit?: boolean,
@@ -1486,8 +1579,8 @@ declare module '@sendbird/uikit-react/ui/MessageInput' {
1486
1579
  onCancelEdit?: () => void,
1487
1580
  onStartTyping?: () => void,
1488
1581
  channelUrl: string,
1489
- mentionSelectedUser?: Array<SendBird.User>,
1490
- onUserMentioned?: (user: SendBird.User) => void,
1582
+ mentionSelectedUser?: Array<User>,
1583
+ onUserMentioned?: (user: User) => void,
1491
1584
  onMentionStringChange?: (str: string) => void,
1492
1585
  onMentionedUserIdsUpdated?: (userIds: Array<string>) => void,
1493
1586
  onKeyUp?: (e: React.KeyboardEvent<HTMLDivElement>) => void,
@@ -1498,17 +1591,22 @@ declare module '@sendbird/uikit-react/ui/MessageInput' {
1498
1591
  }
1499
1592
 
1500
1593
  declare module '@sendbird/uikit-react/ui/MessageItemMenu' {
1594
+ import type { GroupChannel } from '@sendbird/chat/groupChannel';
1595
+ import type { FileMessage, UserMessage } from '@sendbird/chat/message';
1596
+ import type { OpenChannel } from '@sendbird/chat/openChannel';
1597
+ import type SenbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1598
+
1501
1599
  interface MessageItemMenuProps {
1502
1600
  className?: string | Array<string>;
1503
- message: SendBird.UserMessage | SendBird.FileMessage;
1504
- channel: SendBird.GroupChannel | SendBird.OpenChannel;
1601
+ message: UserMessage | FileMessage;
1602
+ channel: GroupChannel | OpenChannel;
1505
1603
  isByMe?: boolean;
1506
1604
  disabled?: boolean;
1507
- replyType?: ReplyType;
1605
+ replyType?: SenbirdUIKitGlobal.ReplyType;
1508
1606
  showEdit?: (bool: boolean) => void;
1509
1607
  showRemove?: (bool: boolean) => void;
1510
- resendMessage?: (message: SendBird.UserMessage | SendBird.FileMessage) => void;
1511
- setQuoteMessage?: (message: SendBird.UserMessage | SendBird.FileMessage) => void;
1608
+ resendMessage?: (message: UserMessage | FileMessage) => void;
1609
+ setQuoteMessage?: (message: UserMessage | FileMessage) => void;
1512
1610
  setSupposedHover?: (bool: boolean) => void;
1513
1611
  }
1514
1612
  const MessageItemMenu: React.FC<MessageItemMenuProps>;
@@ -1517,13 +1615,16 @@ declare module '@sendbird/uikit-react/ui/MessageItemMenu' {
1517
1615
  }
1518
1616
 
1519
1617
  declare module '@sendbird/uikit-react/ui/MessageItemReactionMenu' {
1618
+ import type { EmojiContainer } from '@sendbird/chat';
1619
+ import type { FileMessage, UserMessage } from '@sendbird/chat/message';
1620
+
1520
1621
  interface MessageItemReactionMenuProps {
1521
1622
  className?: string | Array<string>;
1522
- message: SendBird.UserMessage | SendBird.FileMessage;
1623
+ message: UserMessage | FileMessage;
1523
1624
  userId: string;
1524
1625
  spaceFromTrigger?: Record<string, unknown>;
1525
- emojiContainer?: SendBird.EmojiContainer;
1526
- toggleReaction?: (message: SendBird.UserMessage | SendBird.FileMessage, reactionKey: string, isReacted: boolean) => void;
1626
+ emojiContainer?: EmojiContainer;
1627
+ toggleReaction?: (message: UserMessage | FileMessage, reactionKey: string, isReacted: boolean) => void;
1527
1628
  setSupposedHover?: (bool: boolean) => void;
1528
1629
  }
1529
1630
  const MessageItemReactionMenu: React.FC<MessageItemReactionMenuProps>;
@@ -1531,11 +1632,13 @@ declare module '@sendbird/uikit-react/ui/MessageItemReactionMenu' {
1531
1632
  }
1532
1633
 
1533
1634
  declare module '@sendbird/uikit-react/ui/MessageSearchFileItem' {
1635
+ import type SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1636
+
1534
1637
  interface MessageSearchFileItemProps {
1535
1638
  className?: string | Array<string>;
1536
- message: ClientFileMessage;
1639
+ message: SendbirdUIKitGlobal.ClientFileMessage;
1537
1640
  selected?: boolean;
1538
- onClick?: (message: ClientFileMessage) => void;
1641
+ onClick?: (message: SendbirdUIKitGlobal.ClientFileMessage) => void;
1539
1642
  }
1540
1643
  const MessageSearchFileItem: React.FC<MessageSearchFileItemProps>;
1541
1644
  export default MessageSearchFileItem;
@@ -1543,11 +1646,13 @@ declare module '@sendbird/uikit-react/ui/MessageSearchFileItem' {
1543
1646
  }
1544
1647
 
1545
1648
  declare module '@sendbird/uikit-react/ui/MessageSearchItem' {
1649
+ import type SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1650
+
1546
1651
  interface MessageSearchItemProps {
1547
1652
  className?: string | Array<string>;
1548
- message: ClientUserMessage;
1653
+ message: SendbirdUIKitGlobal.ClientUserMessage;
1549
1654
  selected?: boolean;
1550
- onClick?: (message: ClientMessage) => void;
1655
+ onClick?: (message: SendbirdUIKitGlobal.ClientMessage) => void;
1551
1656
  }
1552
1657
  const MessageSearchItem: React.FC<MessageSearchItemProps>;
1553
1658
  export default MessageSearchItem;
@@ -1555,10 +1660,13 @@ declare module '@sendbird/uikit-react/ui/MessageSearchItem' {
1555
1660
  }
1556
1661
 
1557
1662
  declare module '@sendbird/uikit-react/ui/MessageStatus' {
1663
+ import type { UserMessage, FileMessage } from '@sendbird/chat/message';
1664
+ import type { GroupChannel } from '@sendbird/chat/groupChannel';
1665
+
1558
1666
  interface MessageStatusProps {
1559
1667
  className?: string;
1560
- message: SendBird.UserMessage | SendBird.FileMessage;
1561
- channel: SendBird.GroupChannel;
1668
+ message: UserMessage | FileMessage;
1669
+ channel: GroupChannel;
1562
1670
  }
1563
1671
  const MessageStatus: React.FC<MessageStatusProps>;
1564
1672
  export default MessageStatus;
@@ -1580,9 +1688,10 @@ declare module '@sendbird/uikit-react/ui/Modal' {
1580
1688
  }
1581
1689
 
1582
1690
  declare module '@sendbird/uikit-react/ui/OGMessageItemBody' {
1691
+ import type { UserMessage } from '@sendbird/chat/message';
1583
1692
  interface OGMessageItemBodyProps {
1584
1693
  className?: string | Array<string>;
1585
- message: SendBird.UserMessage;
1694
+ message: UserMessage;
1586
1695
  isByMe?: boolean;
1587
1696
  mouseHover?: boolean;
1588
1697
  }
@@ -1591,9 +1700,10 @@ declare module '@sendbird/uikit-react/ui/OGMessageItemBody' {
1591
1700
  }
1592
1701
 
1593
1702
  declare module '@sendbird/uikit-react/ui/OpenChannelAdminMessage' {
1703
+ import type { AdminMessage } from '@sendbird/chat/message';
1594
1704
  interface OpenChannelAdminMessageProps {
1595
1705
  className?: string | Array<string>;
1596
- message: ClientAdminMessage;
1706
+ message: AdminMessage;
1597
1707
  }
1598
1708
  const OpenChannelAdminMessage: React.FC<OpenChannelAdminMessageProps>;
1599
1709
  export default OpenChannelAdminMessage;
@@ -1612,28 +1722,30 @@ declare module '@sendbird/uikit-react/ui/OpenChannelConversationHeader' {
1612
1722
  }
1613
1723
 
1614
1724
  declare module '@sendbird/uikit-react/ui/OpenChannelFileMessage' {
1725
+ import type SenbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1615
1726
  interface OpenChannelFileMessageProps {
1616
1727
  className?: string | Array<string>;
1617
- message: ClientFileMessage;
1728
+ message: SenbirdUIKitGlobal.ClientFileMessage;
1618
1729
  userId: string;
1619
1730
  disabled?: boolean;
1620
1731
  chainTop?: boolean;
1621
1732
  chainBottom?: boolean;
1622
1733
  showRemove(bool: boolean): void;
1623
- resendMessage(message: ClientFileMessage): void;
1734
+ resendMessage(message: SenbirdUIKitGlobal.ClientFileMessage): void;
1624
1735
  }
1625
1736
  const OpenChannelFileMessage: React.FC<OpenChannelFileMessageProps>;
1626
1737
  export default OpenChannelFileMessage;
1627
1738
  }
1628
1739
 
1629
1740
  declare module '@sendbird/uikit-react/ui/OpenChannelOGMessage' {
1741
+ import type SenbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1630
1742
  interface OOpenChannelOGMessageProps {
1631
- message: ClientUserMessage;
1743
+ message: SenbirdUIKitGlobal.ClientUserMessage;
1632
1744
  className?: string | Array<string>;
1633
1745
  disabled?: boolean;
1634
1746
  showEdit(bool: boolean): void;
1635
1747
  showRemove(bool: boolean): void;
1636
- resendMessage(message: ClientUserMessage): void;
1748
+ resendMessage(message: SenbirdUIKitGlobal.ClientUserMessage): void;
1637
1749
  chainTop?: boolean;
1638
1750
  chainBottom?: boolean;
1639
1751
  userId: string;
@@ -1643,30 +1755,32 @@ declare module '@sendbird/uikit-react/ui/OpenChannelOGMessage' {
1643
1755
  }
1644
1756
 
1645
1757
  declare module '@sendbird/uikit-react/ui/OpenChannelThumbnailMessage' {
1758
+ import type SenbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1646
1759
  interface OpenChannelThumbnailMessageProps {
1647
1760
  className?: string | Array<string>;
1648
- message: ClientFileMessage;
1761
+ message: SenbirdUIKitGlobal.ClientFileMessage;
1649
1762
  disabled: boolean;
1650
1763
  userId: string;
1651
1764
  chainTop: boolean;
1652
1765
  chainBottom: boolean;
1653
1766
  onClick(bool: boolean): void,
1654
1767
  showRemove(bool: boolean): void,
1655
- resendMessage(message: ClientFileMessage): void;
1768
+ resendMessage(message: SenbirdUIKitGlobal.ClientFileMessage): void;
1656
1769
  }
1657
1770
  const OpenChannelThumbnailMessage: React.FC<OpenChannelThumbnailMessageProps>;
1658
1771
  export default OpenChannelThumbnailMessage;
1659
1772
  }
1660
1773
 
1661
1774
  declare module '@sendbird/uikit-react/ui/OpenChannelUserMessage' {
1775
+ import type SenbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1662
1776
  interface OpenChannelUserMessageProps {
1663
1777
  className?: string | Array<string>;
1664
- message: ClientUserMessage;
1778
+ message: SenbirdUIKitGlobal.ClientUserMessage;
1665
1779
  userId: string;
1666
1780
  disabled?: boolean;
1667
1781
  showEdit(bool: boolean): void;
1668
1782
  showRemove(bool: boolean): void;
1669
- resendMessage(message: ClientUserMessage): void;
1783
+ resendMessage(message: SenbirdUIKitGlobal.ClientUserMessage): void;
1670
1784
  chainTop?: boolean;
1671
1785
  chainBottom?: boolean;
1672
1786
  }
@@ -1686,8 +1800,9 @@ declare module '@sendbird/uikit-react/ui/PlaceHolder' {
1686
1800
  }
1687
1801
 
1688
1802
  declare module '@sendbird/uikit-react/ui/QuoteMessage' {
1803
+ import type { UserMessage, FileMessage } from '@sendbird/chat/message';
1689
1804
  interface QuoteMessageProps {
1690
- message?: SendBird.UserMessage | SendBird.FileMessage;
1805
+ message?: UserMessage | FileMessage;
1691
1806
  userId?: string;
1692
1807
  isByMe?: boolean;
1693
1808
  className?: string | Array<string>;
@@ -1698,10 +1813,11 @@ declare module '@sendbird/uikit-react/ui/QuoteMessage' {
1698
1813
  }
1699
1814
 
1700
1815
  declare module '@sendbird/uikit-react/ui/QuoteMessageInput' {
1816
+ import type SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1701
1817
  interface QuoteMessageInputProps {
1702
1818
  className?: string | Array<string>;
1703
- replyingMessage: CoreMessageType;
1704
- onClose?: (message: CoreMessageType) => void;
1819
+ replyingMessage: SendbirdUIKitGlobal.CoreMessageType;
1820
+ onClose?: (message: SendbirdUIKitGlobal.CoreMessageType) => void;
1705
1821
  }
1706
1822
  const QuoteMessageInput: React.FC<QuoteMessageInputProps>;
1707
1823
  export default QuoteMessageInput;
@@ -1759,9 +1875,10 @@ declare module '@sendbird/uikit-react/ui/TextButton' {
1759
1875
  }
1760
1876
 
1761
1877
  declare module '@sendbird/uikit-react/ui/TextMessageItemBody' {
1878
+ import type { UserMessage } from '@sendbird/chat/message';
1762
1879
  interface TextMessageItemBodyProps {
1763
1880
  className?: string | Array<string>;
1764
- message: SendBird.UserMessage;
1881
+ message: UserMessage;
1765
1882
  isByMe?: boolean;
1766
1883
  mouseHover?: boolean;
1767
1884
  }
@@ -1770,9 +1887,10 @@ declare module '@sendbird/uikit-react/ui/TextMessageItemBody' {
1770
1887
  }
1771
1888
 
1772
1889
  declare module '@sendbird/uikit-react/ui/ThumbnailMessageItemBody' {
1890
+ import type { FileMessage } from '@sendbird/chat/message';
1773
1891
  interface ThumbnailMessageItemBodyProps {
1774
1892
  className?: string | Array<string>;
1775
- message: SendBird.FileMessage;
1893
+ message: FileMessage;
1776
1894
  isByMe?: boolean;
1777
1895
  mouseHover?: boolean;
1778
1896
  showFileViewer?: (bool: boolean) => void;
@@ -1801,10 +1919,11 @@ declare module '@sendbird/uikit-react/ui/TooltipWrapper' {
1801
1919
  }
1802
1920
 
1803
1921
  declare module '@sendbird/uikit-react/ui/UnknownMessageItemBody' {
1922
+ import type SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1804
1923
  interface UnknownMessageItemBodyProps {
1805
1924
  className?: string | Array<string>;
1806
1925
  isByMe?: boolean;
1807
- message: CoreMessageType;
1926
+ message: SendbirdUIKitGlobal.CoreMessageType;
1808
1927
  mouseHover?: boolean;
1809
1928
  }
1810
1929
  const UnknownMessageItemBody: React.FC<UnknownMessageItemBodyProps>;
@@ -1812,9 +1931,10 @@ declare module '@sendbird/uikit-react/ui/UnknownMessageItemBody' {
1812
1931
  }
1813
1932
 
1814
1933
  declare module '@sendbird/uikit-react/ui/UserListItem' {
1934
+ import type { User } from '@sendbird/chat';
1815
1935
  interface UserListItemProps {
1816
1936
  className?: string | Array<string>;
1817
- user?: SendBird.User,
1937
+ user?: User,
1818
1938
  checkBox?: boolean,
1819
1939
  disableMessaging?: boolean,
1820
1940
  currentUser?: string,
@@ -1827,13 +1947,17 @@ declare module '@sendbird/uikit-react/ui/UserListItem' {
1827
1947
  }
1828
1948
 
1829
1949
  declare module '@sendbird/uikit-react/ui/UserProfile' {
1950
+ import type { User } from '@sendbird/chat';
1951
+ import type { SendbirdGroupChat, GroupChannelCreateParams, GroupChannel } from '@sendbird/chat/groupChannel';
1952
+ import type { SendbirdOpenChat } from '@sendbird/chat/openChannel';
1953
+ import type SendbirdUIKitGlobal from 'SendbirdUIKitGlobal';
1830
1954
  interface UserProfileProps {
1831
- user: SendBird.User;
1955
+ user: User;
1832
1956
  currentUserId?: string;
1833
- sdk?: SendBird.SendBirdInstance;
1834
- logger?: Logger;
1957
+ sdk?: SendbirdGroupChat | SendbirdOpenChat;
1958
+ logger?: SendbirdUIKitGlobal.Logger;
1835
1959
  disableMessaging?: boolean;
1836
- createChannel?(params: SendBird.GroupChannelParams): Promise<SendBird.GroupChannel>;
1960
+ createChannel?(params: GroupChannelCreateParams): Promise<GroupChannel>;
1837
1961
  onSuccess?(): void;
1838
1962
  }
1839
1963
  const UserProfile: React.FC<UserProfileProps>;