rubjs 2.9.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (821) hide show
  1. package/README.md +51 -36
  2. package/lib/clients/VoiceChatClient.d.ts +30 -0
  3. package/lib/clients/VoiceChatClient.js +179 -0
  4. package/lib/clients/index.d.ts +3 -0
  5. package/lib/clients/index.js +10 -0
  6. package/lib/clients/loginClient.d.ts +47 -0
  7. package/lib/clients/loginClient.js +108 -0
  8. package/lib/core/client.d.ts +38 -0
  9. package/lib/core/client.js +53 -0
  10. package/lib/core/crypto.d.ts +12 -0
  11. package/lib/core/crypto.js +95 -0
  12. package/lib/core/filters.d.ts +33 -0
  13. package/lib/core/filters.js +153 -0
  14. package/lib/core/methods/advanced/builder.d.ts +3 -0
  15. package/lib/core/methods/advanced/builder.js +30 -0
  16. package/lib/core/methods/auth/logout.d.ts +3 -0
  17. package/lib/core/methods/auth/logout.js +6 -0
  18. package/lib/core/methods/auth/registerDevice.d.ts +3 -0
  19. package/lib/core/methods/auth/registerDevice.js +47 -0
  20. package/lib/core/methods/auth/sendCode.d.ts +3 -0
  21. package/lib/core/methods/auth/sendCode.js +16 -0
  22. package/lib/core/methods/auth/signIn.d.ts +3 -0
  23. package/lib/core/methods/auth/signIn.js +13 -0
  24. package/lib/core/methods/channels/addChannel.d.ts +3 -0
  25. package/lib/core/methods/channels/addChannel.js +15 -0
  26. package/lib/core/methods/channels/addChannelMembers.d.ts +3 -0
  27. package/lib/core/methods/channels/addChannelMembers.js +11 -0
  28. package/lib/core/methods/channels/banChannelMember.d.ts +3 -0
  29. package/lib/core/methods/channels/banChannelMember.js +14 -0
  30. package/lib/core/methods/channels/cancelChangeObjectOwner.d.ts +3 -0
  31. package/lib/core/methods/channels/cancelChangeObjectOwner.js +6 -0
  32. package/lib/core/methods/channels/channelPreviewByJoinLink.d.ts +3 -0
  33. package/lib/core/methods/channels/channelPreviewByJoinLink.js +8 -0
  34. package/lib/core/methods/channels/checkChannelUsername.d.ts +3 -0
  35. package/lib/core/methods/channels/checkChannelUsername.js +8 -0
  36. package/lib/core/methods/channels/createChannelVoiceChat.d.ts +3 -0
  37. package/lib/core/methods/channels/createChannelVoiceChat.js +6 -0
  38. package/lib/core/methods/channels/discardChannelVoiceChat.d.ts +3 -0
  39. package/lib/core/methods/channels/discardChannelVoiceChat.js +9 -0
  40. package/lib/core/methods/channels/editChannelInfo.d.ts +4 -0
  41. package/lib/core/methods/channels/editChannelInfo.js +39 -0
  42. package/lib/core/methods/channels/getBannedChannelMembers.d.ts +3 -0
  43. package/lib/core/methods/channels/getBannedChannelMembers.js +9 -0
  44. package/lib/core/methods/channels/getChannelAdminAccessList.d.ts +3 -0
  45. package/lib/core/methods/channels/getChannelAdminAccessList.js +9 -0
  46. package/lib/core/methods/channels/getChannelAdminMembers.d.ts +3 -0
  47. package/lib/core/methods/channels/getChannelAdminMembers.js +9 -0
  48. package/lib/core/methods/channels/getChannelAllMembers.d.ts +3 -0
  49. package/lib/core/methods/channels/getChannelAllMembers.js +10 -0
  50. package/lib/core/methods/channels/getChannelInfo.d.ts +3 -0
  51. package/lib/core/methods/channels/getChannelInfo.js +6 -0
  52. package/lib/core/methods/channels/getChannelLink.d.ts +3 -0
  53. package/lib/core/methods/channels/getChannelLink.js +6 -0
  54. package/lib/core/methods/channels/getPendingObjectOwner.d.ts +3 -0
  55. package/lib/core/methods/channels/getPendingObjectOwner.js +6 -0
  56. package/lib/core/methods/channels/joinChannelAction.d.ts +3 -0
  57. package/lib/core/methods/channels/joinChannelAction.js +10 -0
  58. package/lib/core/methods/channels/joinChannelByLink.d.ts +3 -0
  59. package/lib/core/methods/channels/joinChannelByLink.js +8 -0
  60. package/lib/core/methods/channels/leaveChannelVoiceChat.d.ts +3 -0
  61. package/lib/core/methods/channels/leaveChannelVoiceChat.js +9 -0
  62. package/lib/core/methods/channels/removeChannel.d.ts +3 -0
  63. package/lib/core/methods/channels/removeChannel.js +6 -0
  64. package/lib/core/methods/channels/requestChangeObjectOwner.d.ts +3 -0
  65. package/lib/core/methods/channels/requestChangeObjectOwner.js +9 -0
  66. package/lib/core/methods/channels/seenChannelMessages.d.ts +3 -0
  67. package/lib/core/methods/channels/seenChannelMessages.js +10 -0
  68. package/lib/core/methods/channels/setChannelLink.d.ts +3 -0
  69. package/lib/core/methods/channels/setChannelLink.js +6 -0
  70. package/lib/core/methods/channels/setChannelVoiceChatSetting.d.ts +3 -0
  71. package/lib/core/methods/channels/setChannelVoiceChatSetting.js +15 -0
  72. package/lib/core/methods/channels/updateChannelUsername.d.ts +3 -0
  73. package/lib/core/methods/channels/updateChannelUsername.js +9 -0
  74. package/lib/core/methods/chats/actionOnJoinRequest.d.ts +3 -0
  75. package/lib/core/methods/chats/actionOnJoinRequest.js +11 -0
  76. package/lib/core/methods/chats/addLiveComment.d.ts +3 -0
  77. package/lib/core/methods/chats/addLiveComment.js +6 -0
  78. package/lib/core/methods/chats/clickMessageUrl.d.ts +3 -0
  79. package/lib/core/methods/chats/clickMessageUrl.js +6 -0
  80. package/lib/core/methods/chats/createJoinLink.d.ts +3 -0
  81. package/lib/core/methods/chats/createJoinLink.js +12 -0
  82. package/lib/core/methods/chats/deleteAvatar.d.ts +3 -0
  83. package/lib/core/methods/chats/deleteAvatar.js +6 -0
  84. package/lib/core/methods/chats/deleteChatHistory.d.ts +3 -0
  85. package/lib/core/methods/chats/deleteChatHistory.js +9 -0
  86. package/lib/core/methods/chats/editJoinLink.d.ts +3 -0
  87. package/lib/core/methods/chats/editJoinLink.js +23 -0
  88. package/lib/core/methods/chats/getAbsObjects.d.ts +3 -0
  89. package/lib/core/methods/chats/getAbsObjects.js +8 -0
  90. package/lib/core/methods/chats/getAvatars.d.ts +3 -0
  91. package/lib/core/methods/chats/getAvatars.js +6 -0
  92. package/lib/core/methods/chats/getChatReaction.d.ts +3 -0
  93. package/lib/core/methods/chats/getChatReaction.js +6 -0
  94. package/lib/core/methods/chats/getChats.d.ts +3 -0
  95. package/lib/core/methods/chats/getChats.js +6 -0
  96. package/lib/core/methods/chats/getChatsUpdates.d.ts +3 -0
  97. package/lib/core/methods/chats/getChatsUpdates.js +6 -0
  98. package/lib/core/methods/chats/getJoinLinks.d.ts +3 -0
  99. package/lib/core/methods/chats/getJoinLinks.js +6 -0
  100. package/lib/core/methods/chats/getJoinRequests.d.ts +3 -0
  101. package/lib/core/methods/chats/getJoinRequests.js +6 -0
  102. package/lib/core/methods/chats/getLinkFromAppUrl.d.ts +3 -0
  103. package/lib/core/methods/chats/getLinkFromAppUrl.js +6 -0
  104. package/lib/core/methods/chats/getLiveComments.d.ts +3 -0
  105. package/lib/core/methods/chats/getLiveComments.js +6 -0
  106. package/lib/core/methods/chats/getLivePlayUrl.d.ts +3 -0
  107. package/lib/core/methods/chats/getLivePlayUrl.js +6 -0
  108. package/lib/core/methods/chats/getLiveStatus.d.ts +3 -0
  109. package/lib/core/methods/chats/getLiveStatus.js +6 -0
  110. package/lib/core/methods/chats/getObjectInfoByUsername.d.ts +3 -0
  111. package/lib/core/methods/chats/getObjectInfoByUsername.js +8 -0
  112. package/lib/core/methods/chats/getTopChatUsers.d.ts +3 -0
  113. package/lib/core/methods/chats/getTopChatUsers.js +7 -0
  114. package/lib/core/methods/chats/removeFromTopChatUsers.d.ts +3 -0
  115. package/lib/core/methods/chats/removeFromTopChatUsers.js +6 -0
  116. package/lib/core/methods/chats/removeJoinLink.d.ts +3 -0
  117. package/lib/core/methods/chats/removeJoinLink.js +8 -0
  118. package/lib/core/methods/chats/searchChatMessages.d.ts +3 -0
  119. package/lib/core/methods/chats/searchChatMessages.js +14 -0
  120. package/lib/core/methods/chats/searchGlobalMessages.d.ts +3 -0
  121. package/lib/core/methods/chats/searchGlobalMessages.js +6 -0
  122. package/lib/core/methods/chats/seenChats.d.ts +3 -0
  123. package/lib/core/methods/chats/seenChats.js +6 -0
  124. package/lib/core/methods/chats/sendChatActivity.d.ts +3 -0
  125. package/lib/core/methods/chats/sendChatActivity.js +10 -0
  126. package/lib/core/methods/chats/sendLive.d.ts +3 -0
  127. package/lib/core/methods/chats/sendLive.js +17 -0
  128. package/lib/core/methods/chats/setActionChat.d.ts +3 -0
  129. package/lib/core/methods/chats/setActionChat.js +10 -0
  130. package/lib/core/methods/chats/uploadAvatar.d.ts +3 -0
  131. package/lib/core/methods/chats/uploadAvatar.js +14 -0
  132. package/lib/core/methods/contacts/addAddressBook.d.ts +3 -0
  133. package/lib/core/methods/contacts/addAddressBook.js +6 -0
  134. package/lib/core/methods/contacts/deleteContact.d.ts +3 -0
  135. package/lib/core/methods/contacts/deleteContact.js +6 -0
  136. package/lib/core/methods/contacts/getContacts.d.ts +3 -0
  137. package/lib/core/methods/contacts/getContacts.js +6 -0
  138. package/lib/core/methods/contacts/getContactsLastOnline.d.ts +3 -0
  139. package/lib/core/methods/contacts/getContactsLastOnline.js +6 -0
  140. package/lib/core/methods/contacts/getContactsUpdates.d.ts +3 -0
  141. package/lib/core/methods/contacts/getContactsUpdates.js +6 -0
  142. package/lib/core/methods/contacts/resetContacts.d.ts +3 -0
  143. package/lib/core/methods/contacts/resetContacts.js +7 -0
  144. package/lib/core/methods/extras/banMember.d.ts +3 -0
  145. package/lib/core/methods/extras/banMember.js +9 -0
  146. package/lib/core/methods/extras/deleteMessagebyCount.d.ts +3 -0
  147. package/lib/core/methods/extras/deleteMessagebyCount.js +19 -0
  148. package/lib/core/methods/extras/getInfo.d.ts +3 -0
  149. package/lib/core/methods/extras/getInfo.js +15 -0
  150. package/lib/core/methods/extras/getObjectByUsername.d.ts +3 -0
  151. package/lib/core/methods/extras/getObjectByUsername.js +8 -0
  152. package/lib/core/methods/extras/getProfileLinkItems.d.ts +3 -0
  153. package/lib/core/methods/extras/getProfileLinkItems.js +6 -0
  154. package/lib/core/methods/extras/getRelatedObjects.d.ts +3 -0
  155. package/lib/core/methods/extras/getRelatedObjects.js +6 -0
  156. package/lib/core/methods/extras/getTranscription.d.ts +3 -0
  157. package/lib/core/methods/extras/getTranscription.js +9 -0
  158. package/lib/core/methods/extras/join.d.ts +3 -0
  159. package/lib/core/methods/extras/join.js +11 -0
  160. package/lib/core/methods/extras/joinVoiceChat.d.ts +3 -0
  161. package/lib/core/methods/extras/joinVoiceChat.js +11 -0
  162. package/lib/core/methods/extras/leaveChat.d.ts +3 -0
  163. package/lib/core/methods/extras/leaveChat.js +9 -0
  164. package/lib/core/methods/extras/onEditMessages.d.ts +4 -0
  165. package/lib/core/methods/extras/onEditMessages.js +32 -0
  166. package/lib/core/methods/extras/reportObject.d.ts +14 -0
  167. package/lib/core/methods/extras/reportObject.js +21 -0
  168. package/lib/core/methods/extras/searchGlobalObjects.d.ts +3 -0
  169. package/lib/core/methods/extras/searchGlobalObjects.js +6 -0
  170. package/lib/core/methods/extras/sendVoiceChatActivity.d.ts +3 -0
  171. package/lib/core/methods/extras/sendVoiceChatActivity.js +13 -0
  172. package/lib/core/methods/extras/setVoiceChatState.d.ts +3 -0
  173. package/lib/core/methods/extras/setVoiceChatState.js +14 -0
  174. package/lib/core/methods/extras/transcribeVoice.d.ts +3 -0
  175. package/lib/core/methods/extras/transcribeVoice.js +6 -0
  176. package/lib/core/methods/extras/userIsAdmin.d.ts +3 -0
  177. package/lib/core/methods/extras/userIsAdmin.js +18 -0
  178. package/lib/core/methods/gif/addToMyGifSet.d.ts +3 -0
  179. package/lib/core/methods/gif/addToMyGifSet.js +6 -0
  180. package/lib/core/methods/gif/getMyGifSet.d.ts +3 -0
  181. package/lib/core/methods/gif/getMyGifSet.js +6 -0
  182. package/lib/core/methods/gif/removeFromMyGifSet.d.ts +3 -0
  183. package/lib/core/methods/gif/removeFromMyGifSet.js +6 -0
  184. package/lib/core/methods/groups/addGroup.d.ts +3 -0
  185. package/lib/core/methods/groups/addGroup.js +8 -0
  186. package/lib/core/methods/groups/addGroupMembers.d.ts +3 -0
  187. package/lib/core/methods/groups/addGroupMembers.js +8 -0
  188. package/lib/core/methods/groups/banGroupMember.d.ts +3 -0
  189. package/lib/core/methods/groups/banGroupMember.js +14 -0
  190. package/lib/core/methods/groups/createGroupVoiceChat.d.ts +3 -0
  191. package/lib/core/methods/groups/createGroupVoiceChat.js +6 -0
  192. package/lib/core/methods/groups/deleteNoAccessGroupChat.d.ts +3 -0
  193. package/lib/core/methods/groups/deleteNoAccessGroupChat.js +6 -0
  194. package/lib/core/methods/groups/discardGroupVoiceChat.d.ts +3 -0
  195. package/lib/core/methods/groups/discardGroupVoiceChat.js +9 -0
  196. package/lib/core/methods/groups/editGroupInfo.d.ts +6 -0
  197. package/lib/core/methods/groups/editGroupInfo.js +41 -0
  198. package/lib/core/methods/groups/getBannedGroupMembers.d.ts +3 -0
  199. package/lib/core/methods/groups/getBannedGroupMembers.js +6 -0
  200. package/lib/core/methods/groups/getGroupAdminAccessList.d.ts +3 -0
  201. package/lib/core/methods/groups/getGroupAdminAccessList.js +9 -0
  202. package/lib/core/methods/groups/getGroupAdminMembers.d.ts +3 -0
  203. package/lib/core/methods/groups/getGroupAdminMembers.js +6 -0
  204. package/lib/core/methods/groups/getGroupAllMembers.d.ts +3 -0
  205. package/lib/core/methods/groups/getGroupAllMembers.js +10 -0
  206. package/lib/core/methods/groups/getGroupDefaultAccess.d.ts +3 -0
  207. package/lib/core/methods/groups/getGroupDefaultAccess.js +6 -0
  208. package/lib/core/methods/groups/getGroupInfo.d.ts +3 -0
  209. package/lib/core/methods/groups/getGroupInfo.js +6 -0
  210. package/lib/core/methods/groups/getGroupLink.d.ts +3 -0
  211. package/lib/core/methods/groups/getGroupLink.js +6 -0
  212. package/lib/core/methods/groups/getGroupMentionList.d.ts +3 -0
  213. package/lib/core/methods/groups/getGroupMentionList.js +9 -0
  214. package/lib/core/methods/groups/getGroupOnlineCount.d.ts +3 -0
  215. package/lib/core/methods/groups/getGroupOnlineCount.js +6 -0
  216. package/lib/core/methods/groups/getGroupVoiceChatParticipants.d.ts +3 -0
  217. package/lib/core/methods/groups/getGroupVoiceChatParticipants.js +7 -0
  218. package/lib/core/methods/groups/getGroupVoiceChatUpdates.d.ts +3 -0
  219. package/lib/core/methods/groups/getGroupVoiceChatUpdates.js +10 -0
  220. package/lib/core/methods/groups/groupPreviewByJoinLink.d.ts +3 -0
  221. package/lib/core/methods/groups/groupPreviewByJoinLink.js +8 -0
  222. package/lib/core/methods/groups/joinGroup.d.ts +3 -0
  223. package/lib/core/methods/groups/joinGroup.js +9 -0
  224. package/lib/core/methods/groups/joinGroupVoiceChat.d.ts +3 -0
  225. package/lib/core/methods/groups/joinGroupVoiceChat.js +11 -0
  226. package/lib/core/methods/groups/leaveGroup.d.ts +3 -0
  227. package/lib/core/methods/groups/leaveGroup.js +6 -0
  228. package/lib/core/methods/groups/leaveGroupVoiceChat.d.ts +3 -0
  229. package/lib/core/methods/groups/leaveGroupVoiceChat.js +9 -0
  230. package/lib/core/methods/groups/removeGroup.d.ts +3 -0
  231. package/lib/core/methods/groups/removeGroup.js +6 -0
  232. package/lib/core/methods/groups/seenGroupMessages.d.ts +3 -0
  233. package/lib/core/methods/groups/seenGroupMessages.js +10 -0
  234. package/lib/core/methods/groups/setGroupAdmin.d.ts +5 -0
  235. package/lib/core/methods/groups/setGroupAdmin.js +17 -0
  236. package/lib/core/methods/groups/setGroupDefaultAccess.d.ts +4 -0
  237. package/lib/core/methods/groups/setGroupDefaultAccess.js +11 -0
  238. package/lib/core/methods/groups/setGroupLink.d.ts +3 -0
  239. package/lib/core/methods/groups/setGroupLink.js +6 -0
  240. package/lib/core/methods/groups/setGroupVoiceChatSetting.d.ts +3 -0
  241. package/lib/core/methods/groups/setGroupVoiceChatSetting.js +15 -0
  242. package/lib/core/methods/index.d.ts +188 -0
  243. package/lib/core/methods/index.js +598 -0
  244. package/lib/core/methods/messages/actionOnMessageReaction.d.ts +3 -0
  245. package/lib/core/methods/messages/actionOnMessageReaction.js +14 -0
  246. package/lib/core/methods/messages/createPoll.d.ts +3 -0
  247. package/lib/core/methods/messages/createPoll.js +26 -0
  248. package/lib/core/methods/messages/deleteMessages.d.ts +3 -0
  249. package/lib/core/methods/messages/deleteMessages.js +17 -0
  250. package/lib/core/methods/messages/editMessage.d.ts +3 -0
  251. package/lib/core/methods/messages/editMessage.js +15 -0
  252. package/lib/core/methods/messages/forwardMessages.d.ts +3 -0
  253. package/lib/core/methods/messages/forwardMessages.js +22 -0
  254. package/lib/core/methods/messages/getMessageShareUrl.d.ts +3 -0
  255. package/lib/core/methods/messages/getMessageShareUrl.js +6 -0
  256. package/lib/core/methods/messages/getMessages.d.ts +3 -0
  257. package/lib/core/methods/messages/getMessages.js +12 -0
  258. package/lib/core/methods/messages/getMessagesByID.d.ts +3 -0
  259. package/lib/core/methods/messages/getMessagesByID.js +11 -0
  260. package/lib/core/methods/messages/getMessagesInterval.d.ts +3 -0
  261. package/lib/core/methods/messages/getMessagesInterval.js +9 -0
  262. package/lib/core/methods/messages/getMessagesUpdates.d.ts +3 -0
  263. package/lib/core/methods/messages/getMessagesUpdates.js +6 -0
  264. package/lib/core/methods/messages/getPollOptionVoters.d.ts +3 -0
  265. package/lib/core/methods/messages/getPollOptionVoters.js +10 -0
  266. package/lib/core/methods/messages/getPollStatus.d.ts +3 -0
  267. package/lib/core/methods/messages/getPollStatus.js +6 -0
  268. package/lib/core/methods/messages/index.d.ts +26 -0
  269. package/lib/core/methods/messages/index.js +56 -0
  270. package/lib/core/methods/messages/sendDocument.d.ts +3 -0
  271. package/lib/core/methods/messages/sendDocument.js +6 -0
  272. package/lib/core/methods/messages/sendFileInline.d.ts +18 -0
  273. package/lib/core/methods/messages/sendFileInline.js +24 -0
  274. package/lib/core/methods/messages/sendGif.d.ts +3 -0
  275. package/lib/core/methods/messages/sendGif.js +6 -0
  276. package/lib/core/methods/messages/sendMessage.d.ts +3 -0
  277. package/lib/core/methods/messages/sendMessage.js +139 -0
  278. package/lib/core/methods/messages/sendMusic.d.ts +3 -0
  279. package/lib/core/methods/messages/sendMusic.js +6 -0
  280. package/lib/core/methods/messages/sendPhoto.d.ts +3 -0
  281. package/lib/core/methods/messages/sendPhoto.js +6 -0
  282. package/lib/core/methods/messages/sendSticker.d.ts +3 -0
  283. package/lib/core/methods/messages/sendSticker.js +6 -0
  284. package/lib/core/methods/messages/sendText.d.ts +3 -0
  285. package/lib/core/methods/messages/sendText.js +6 -0
  286. package/lib/core/methods/messages/sendVideo.d.ts +3 -0
  287. package/lib/core/methods/messages/sendVideo.js +6 -0
  288. package/lib/core/methods/messages/sendVideoMessage.d.ts +3 -0
  289. package/lib/core/methods/messages/sendVideoMessage.js +6 -0
  290. package/lib/core/methods/messages/sendVoice.d.ts +3 -0
  291. package/lib/core/methods/messages/sendVoice.js +6 -0
  292. package/lib/core/methods/messages/setPinMessage.d.ts +3 -0
  293. package/lib/core/methods/messages/setPinMessage.js +14 -0
  294. package/lib/core/methods/messages/votePoll.d.ts +3 -0
  295. package/lib/core/methods/messages/votePoll.js +6 -0
  296. package/lib/core/methods/settings/changePassword.d.ts +3 -0
  297. package/lib/core/methods/settings/changePassword.js +6 -0
  298. package/lib/core/methods/settings/checkTwoStepPasscode.d.ts +3 -0
  299. package/lib/core/methods/settings/checkTwoStepPasscode.js +6 -0
  300. package/lib/core/methods/settings/deleteFolder.d.ts +3 -0
  301. package/lib/core/methods/settings/deleteFolder.js +6 -0
  302. package/lib/core/methods/settings/getBlockedUsers.d.ts +3 -0
  303. package/lib/core/methods/settings/getBlockedUsers.js +6 -0
  304. package/lib/core/methods/settings/getFolders.d.ts +3 -0
  305. package/lib/core/methods/settings/getFolders.js +6 -0
  306. package/lib/core/methods/settings/getMySessions.d.ts +3 -0
  307. package/lib/core/methods/settings/getMySessions.js +6 -0
  308. package/lib/core/methods/settings/getPrivacySetting.d.ts +3 -0
  309. package/lib/core/methods/settings/getPrivacySetting.js +6 -0
  310. package/lib/core/methods/settings/getSuggestedFolders.d.ts +3 -0
  311. package/lib/core/methods/settings/getSuggestedFolders.js +6 -0
  312. package/lib/core/methods/settings/getTwoPasscodeStatus.d.ts +3 -0
  313. package/lib/core/methods/settings/getTwoPasscodeStatus.js +6 -0
  314. package/lib/core/methods/settings/requestRecoveryEmail.d.ts +3 -0
  315. package/lib/core/methods/settings/requestRecoveryEmail.js +9 -0
  316. package/lib/core/methods/settings/setSetting.d.ts +5 -0
  317. package/lib/core/methods/settings/setSetting.js +51 -0
  318. package/lib/core/methods/settings/setupTwoStepVerification.d.ts +3 -0
  319. package/lib/core/methods/settings/setupTwoStepVerification.js +10 -0
  320. package/lib/core/methods/settings/terminateOtherSessions.d.ts +3 -0
  321. package/lib/core/methods/settings/terminateOtherSessions.js +7 -0
  322. package/lib/core/methods/settings/terminateSession.d.ts +3 -0
  323. package/lib/core/methods/settings/terminateSession.js +6 -0
  324. package/lib/core/methods/settings/turnOffTwoStep.d.ts +3 -0
  325. package/lib/core/methods/settings/turnOffTwoStep.js +7 -0
  326. package/lib/core/methods/settings/updateProfile.d.ts +3 -0
  327. package/lib/core/methods/settings/updateProfile.js +21 -0
  328. package/lib/core/methods/settings/updateUsername.d.ts +3 -0
  329. package/lib/core/methods/settings/updateUsername.js +6 -0
  330. package/lib/core/methods/settings/verifyRecoveryEmail.d.ts +3 -0
  331. package/lib/core/methods/settings/verifyRecoveryEmail.js +6 -0
  332. package/lib/core/methods/stickers/actionOnStickerSet.d.ts +3 -0
  333. package/lib/core/methods/stickers/actionOnStickerSet.js +10 -0
  334. package/lib/core/methods/stickers/getMyStickerSets.d.ts +3 -0
  335. package/lib/core/methods/stickers/getMyStickerSets.js +6 -0
  336. package/lib/core/methods/stickers/getStickerSetByID.d.ts +3 -0
  337. package/lib/core/methods/stickers/getStickerSetByID.js +6 -0
  338. package/lib/core/methods/stickers/getStickersByEmoji.d.ts +3 -0
  339. package/lib/core/methods/stickers/getStickersByEmoji.js +6 -0
  340. package/lib/core/methods/stickers/getStickersBySetIds.d.ts +3 -0
  341. package/lib/core/methods/stickers/getStickersBySetIds.js +8 -0
  342. package/lib/core/methods/stickers/getTrendStickerSets.d.ts +3 -0
  343. package/lib/core/methods/stickers/getTrendStickerSets.js +6 -0
  344. package/lib/core/methods/stickers/searchStickers.d.ts +3 -0
  345. package/lib/core/methods/stickers/searchStickers.js +6 -0
  346. package/lib/core/methods/users/checkUserUsername.d.ts +3 -0
  347. package/lib/core/methods/users/checkUserUsername.js +6 -0
  348. package/lib/core/methods/users/deleteUserChat.d.ts +3 -0
  349. package/lib/core/methods/users/deleteUserChat.js +9 -0
  350. package/lib/core/methods/users/getMe.d.ts +3 -0
  351. package/lib/core/methods/users/getMe.js +6 -0
  352. package/lib/core/methods/users/getUserInfo.d.ts +3 -0
  353. package/lib/core/methods/users/getUserInfo.js +7 -0
  354. package/lib/core/methods/users/setBlockUser.d.ts +3 -0
  355. package/lib/core/methods/users/setBlockUser.js +9 -0
  356. package/lib/core/methods/utilities/index.d.ts +8 -0
  357. package/lib/core/methods/utilities/index.js +20 -0
  358. package/lib/core/methods/utilities/requestSendFile.d.ts +3 -0
  359. package/lib/core/methods/utilities/requestSendFile.js +11 -0
  360. package/lib/core/methods/utilities/run.d.ts +3 -0
  361. package/lib/core/methods/utilities/run.js +9 -0
  362. package/lib/core/methods/utilities/runErrorMiddlewares.d.ts +3 -0
  363. package/lib/core/methods/utilities/runErrorMiddlewares.js +13 -0
  364. package/lib/core/methods/utilities/start.d.ts +3 -0
  365. package/lib/core/methods/utilities/start.js +72 -0
  366. package/lib/core/methods/utilities/thumbnail.js +70 -0
  367. package/lib/core/methods/utilities/useError.d.ts +4 -0
  368. package/lib/core/methods/utilities/useError.js +6 -0
  369. package/lib/core/methods/utilities/usePlugin.d.ts +4 -0
  370. package/lib/core/methods/utilities/usePlugin.js +25 -0
  371. package/lib/core/network.d.ts +49 -0
  372. package/lib/core/network.js +436 -0
  373. package/lib/core/network_login.d.ts +47 -0
  374. package/lib/core/network_login.js +137 -0
  375. package/lib/core/session.d.ts +12 -0
  376. package/lib/core/session.js +65 -0
  377. package/lib/index.d.ts +9 -0
  378. package/lib/index.js +50 -0
  379. package/lib/types/activities.type.d.ts +12 -0
  380. package/lib/types/activities.type.js +18 -0
  381. package/lib/types/chat.type.d.ts +14 -0
  382. package/lib/types/chat.type.js +20 -0
  383. package/lib/types/client.type.d.ts +33 -0
  384. package/lib/types/decorators.type.d.ts +173 -0
  385. package/lib/types/index.type.d.ts +7 -0
  386. package/lib/types/index.type.js +51 -0
  387. package/lib/types/message.type.d.ts +26 -0
  388. package/lib/types/message.type.js +72 -0
  389. package/lib/types/network.type.d.ts +7 -0
  390. package/lib/types/notifications.type.d.ts +14 -0
  391. package/lib/types/notifications.type.js +20 -0
  392. package/lib/types/session.type.d.ts +7 -0
  393. package/lib/utils/prompt.d.ts +1 -0
  394. package/lib/utils/prompt.js +17 -0
  395. package/package.json +45 -43
  396. package/rubjs/client.d.ts +0 -41
  397. package/rubjs/client.js +0 -40
  398. package/rubjs/clients/VoiceChatClient.d.ts +0 -30
  399. package/rubjs/clients/VoiceChatClient.js +0 -183
  400. package/rubjs/clients/index.d.ts +0 -4
  401. package/rubjs/clients/index.js +0 -12
  402. package/rubjs/clients/loginClient.d.ts +0 -47
  403. package/rubjs/clients/loginClient.js +0 -122
  404. package/rubjs/clients/sendLiveClient.d.ts +0 -25
  405. package/rubjs/clients/sendLiveClient.js +0 -146
  406. package/rubjs/crypto/index.d.ts +0 -12
  407. package/rubjs/crypto/index.js +0 -95
  408. package/rubjs/index.d.ts +0 -7
  409. package/rubjs/index.js +0 -53
  410. package/rubjs/methods/advanced/builder.d.ts +0 -3
  411. package/rubjs/methods/advanced/builder.js +0 -41
  412. package/rubjs/methods/auth/logout.d.ts +0 -3
  413. package/rubjs/methods/auth/logout.js +0 -17
  414. package/rubjs/methods/auth/registerDevice.d.ts +0 -3
  415. package/rubjs/methods/auth/registerDevice.js +0 -61
  416. package/rubjs/methods/auth/sendCode.d.ts +0 -3
  417. package/rubjs/methods/auth/sendCode.js +0 -27
  418. package/rubjs/methods/auth/signIn.d.ts +0 -3
  419. package/rubjs/methods/auth/signIn.js +0 -24
  420. package/rubjs/methods/channels/addChannel.d.ts +0 -3
  421. package/rubjs/methods/channels/addChannel.js +0 -26
  422. package/rubjs/methods/channels/addChannelMembers.d.ts +0 -3
  423. package/rubjs/methods/channels/addChannelMembers.js +0 -22
  424. package/rubjs/methods/channels/banChannelMember.d.ts +0 -3
  425. package/rubjs/methods/channels/banChannelMember.js +0 -25
  426. package/rubjs/methods/channels/cancelChangeObjectOwner.d.ts +0 -3
  427. package/rubjs/methods/channels/cancelChangeObjectOwner.js +0 -17
  428. package/rubjs/methods/channels/channelPreviewByJoinLink.d.ts +0 -3
  429. package/rubjs/methods/channels/channelPreviewByJoinLink.js +0 -19
  430. package/rubjs/methods/channels/checkChannelUsername.d.ts +0 -3
  431. package/rubjs/methods/channels/checkChannelUsername.js +0 -19
  432. package/rubjs/methods/channels/createChannelVoiceChat.d.ts +0 -3
  433. package/rubjs/methods/channels/createChannelVoiceChat.js +0 -17
  434. package/rubjs/methods/channels/discardChannelVoiceChat.d.ts +0 -3
  435. package/rubjs/methods/channels/discardChannelVoiceChat.js +0 -20
  436. package/rubjs/methods/channels/editChannelInfo.d.ts +0 -4
  437. package/rubjs/methods/channels/editChannelInfo.js +0 -50
  438. package/rubjs/methods/channels/getBannedChannelMembers.d.ts +0 -3
  439. package/rubjs/methods/channels/getBannedChannelMembers.js +0 -20
  440. package/rubjs/methods/channels/getChannelAdminAccessList.d.ts +0 -3
  441. package/rubjs/methods/channels/getChannelAdminAccessList.js +0 -20
  442. package/rubjs/methods/channels/getChannelAdminMembers.d.ts +0 -3
  443. package/rubjs/methods/channels/getChannelAdminMembers.js +0 -20
  444. package/rubjs/methods/channels/getChannelAllMembers.d.ts +0 -3
  445. package/rubjs/methods/channels/getChannelAllMembers.js +0 -21
  446. package/rubjs/methods/channels/getChannelInfo.d.ts +0 -3
  447. package/rubjs/methods/channels/getChannelInfo.js +0 -17
  448. package/rubjs/methods/channels/getChannelLink.d.ts +0 -3
  449. package/rubjs/methods/channels/getChannelLink.js +0 -17
  450. package/rubjs/methods/channels/getPendingObjectOwner.d.ts +0 -3
  451. package/rubjs/methods/channels/getPendingObjectOwner.js +0 -17
  452. package/rubjs/methods/channels/joinChannelAction.d.ts +0 -3
  453. package/rubjs/methods/channels/joinChannelAction.js +0 -21
  454. package/rubjs/methods/channels/joinChannelByLink.d.ts +0 -3
  455. package/rubjs/methods/channels/joinChannelByLink.js +0 -19
  456. package/rubjs/methods/channels/leaveChannelVoiceChat.d.ts +0 -3
  457. package/rubjs/methods/channels/leaveChannelVoiceChat.js +0 -20
  458. package/rubjs/methods/channels/removeChannel.d.ts +0 -3
  459. package/rubjs/methods/channels/removeChannel.js +0 -17
  460. package/rubjs/methods/channels/requestChangeObjectOwner.d.ts +0 -3
  461. package/rubjs/methods/channels/requestChangeObjectOwner.js +0 -20
  462. package/rubjs/methods/channels/seenChannelMessages.d.ts +0 -3
  463. package/rubjs/methods/channels/seenChannelMessages.js +0 -21
  464. package/rubjs/methods/channels/setChannelLink.d.ts +0 -3
  465. package/rubjs/methods/channels/setChannelLink.js +0 -17
  466. package/rubjs/methods/channels/setChannelVoiceChatSetting.d.ts +0 -3
  467. package/rubjs/methods/channels/setChannelVoiceChatSetting.js +0 -26
  468. package/rubjs/methods/channels/updateChannelUsername.d.ts +0 -3
  469. package/rubjs/methods/channels/updateChannelUsername.js +0 -20
  470. package/rubjs/methods/chats/actionOnJoinRequest.d.ts +0 -3
  471. package/rubjs/methods/chats/actionOnJoinRequest.js +0 -22
  472. package/rubjs/methods/chats/addLiveComment.d.ts +0 -3
  473. package/rubjs/methods/chats/addLiveComment.js +0 -17
  474. package/rubjs/methods/chats/clickMessageUrl.d.ts +0 -3
  475. package/rubjs/methods/chats/clickMessageUrl.js +0 -17
  476. package/rubjs/methods/chats/createJoinLink.d.ts +0 -3
  477. package/rubjs/methods/chats/createJoinLink.js +0 -23
  478. package/rubjs/methods/chats/deleteAvatar.d.ts +0 -3
  479. package/rubjs/methods/chats/deleteAvatar.js +0 -17
  480. package/rubjs/methods/chats/deleteChatHistory.d.ts +0 -3
  481. package/rubjs/methods/chats/deleteChatHistory.js +0 -20
  482. package/rubjs/methods/chats/editJoinLink.d.ts +0 -3
  483. package/rubjs/methods/chats/editJoinLink.js +0 -34
  484. package/rubjs/methods/chats/getAbsObjects.d.ts +0 -3
  485. package/rubjs/methods/chats/getAbsObjects.js +0 -19
  486. package/rubjs/methods/chats/getAvatars.d.ts +0 -3
  487. package/rubjs/methods/chats/getAvatars.js +0 -17
  488. package/rubjs/methods/chats/getChatReaction.d.ts +0 -3
  489. package/rubjs/methods/chats/getChatReaction.js +0 -17
  490. package/rubjs/methods/chats/getChats.d.ts +0 -3
  491. package/rubjs/methods/chats/getChats.js +0 -17
  492. package/rubjs/methods/chats/getChatsUpdates.d.ts +0 -3
  493. package/rubjs/methods/chats/getChatsUpdates.js +0 -17
  494. package/rubjs/methods/chats/getJoinLinks.d.ts +0 -3
  495. package/rubjs/methods/chats/getJoinLinks.js +0 -17
  496. package/rubjs/methods/chats/getJoinRequests.d.ts +0 -3
  497. package/rubjs/methods/chats/getJoinRequests.js +0 -17
  498. package/rubjs/methods/chats/getLinkFromAppUrl.d.ts +0 -3
  499. package/rubjs/methods/chats/getLinkFromAppUrl.js +0 -17
  500. package/rubjs/methods/chats/getLiveComments.d.ts +0 -3
  501. package/rubjs/methods/chats/getLiveComments.js +0 -17
  502. package/rubjs/methods/chats/getLivePlayUrl.d.ts +0 -3
  503. package/rubjs/methods/chats/getLivePlayUrl.js +0 -17
  504. package/rubjs/methods/chats/getLiveStatus.d.ts +0 -3
  505. package/rubjs/methods/chats/getLiveStatus.js +0 -17
  506. package/rubjs/methods/chats/getObjectInfoByUsername.d.ts +0 -3
  507. package/rubjs/methods/chats/getObjectInfoByUsername.js +0 -19
  508. package/rubjs/methods/chats/getTopChatUsers.d.ts +0 -3
  509. package/rubjs/methods/chats/getTopChatUsers.js +0 -18
  510. package/rubjs/methods/chats/removeFromTopChatUsers.d.ts +0 -3
  511. package/rubjs/methods/chats/removeFromTopChatUsers.js +0 -17
  512. package/rubjs/methods/chats/removeJoinLink.d.ts +0 -3
  513. package/rubjs/methods/chats/removeJoinLink.js +0 -19
  514. package/rubjs/methods/chats/searchChatMessages.d.ts +0 -3
  515. package/rubjs/methods/chats/searchChatMessages.js +0 -25
  516. package/rubjs/methods/chats/searchGlobalMessages.d.ts +0 -3
  517. package/rubjs/methods/chats/searchGlobalMessages.js +0 -17
  518. package/rubjs/methods/chats/seenChats.d.ts +0 -3
  519. package/rubjs/methods/chats/seenChats.js +0 -17
  520. package/rubjs/methods/chats/sendChatActivity.d.ts +0 -3
  521. package/rubjs/methods/chats/sendChatActivity.js +0 -21
  522. package/rubjs/methods/chats/sendLive.d.ts +0 -3
  523. package/rubjs/methods/chats/sendLive.js +0 -28
  524. package/rubjs/methods/chats/setActionChat.d.ts +0 -3
  525. package/rubjs/methods/chats/setActionChat.js +0 -21
  526. package/rubjs/methods/chats/uploadAvatar.d.ts +0 -3
  527. package/rubjs/methods/chats/uploadAvatar.js +0 -29
  528. package/rubjs/methods/contacts/addAddressBook.d.ts +0 -3
  529. package/rubjs/methods/contacts/addAddressBook.js +0 -17
  530. package/rubjs/methods/contacts/deleteContact.d.ts +0 -3
  531. package/rubjs/methods/contacts/deleteContact.js +0 -17
  532. package/rubjs/methods/contacts/getContacts.d.ts +0 -3
  533. package/rubjs/methods/contacts/getContacts.js +0 -17
  534. package/rubjs/methods/contacts/getContactsLastOnline.d.ts +0 -3
  535. package/rubjs/methods/contacts/getContactsLastOnline.js +0 -17
  536. package/rubjs/methods/contacts/getContactsUpdates.d.ts +0 -3
  537. package/rubjs/methods/contacts/getContactsUpdates.js +0 -17
  538. package/rubjs/methods/contacts/resetContacts.d.ts +0 -3
  539. package/rubjs/methods/contacts/resetContacts.js +0 -18
  540. package/rubjs/methods/extras/banMember.d.ts +0 -3
  541. package/rubjs/methods/extras/banMember.js +0 -20
  542. package/rubjs/methods/extras/deleteMessagebyCount.d.ts +0 -3
  543. package/rubjs/methods/extras/deleteMessagebyCount.js +0 -30
  544. package/rubjs/methods/extras/getInfo.d.ts +0 -3
  545. package/rubjs/methods/extras/getInfo.js +0 -26
  546. package/rubjs/methods/extras/getObjectByUsername.d.ts +0 -3
  547. package/rubjs/methods/extras/getObjectByUsername.js +0 -19
  548. package/rubjs/methods/extras/getProfileLinkItems.d.ts +0 -3
  549. package/rubjs/methods/extras/getProfileLinkItems.js +0 -17
  550. package/rubjs/methods/extras/getRelatedObjects.d.ts +0 -3
  551. package/rubjs/methods/extras/getRelatedObjects.js +0 -17
  552. package/rubjs/methods/extras/getTranscription.d.ts +0 -3
  553. package/rubjs/methods/extras/getTranscription.js +0 -20
  554. package/rubjs/methods/extras/join.d.ts +0 -3
  555. package/rubjs/methods/extras/join.js +0 -22
  556. package/rubjs/methods/extras/joinVoiceChat.d.ts +0 -3
  557. package/rubjs/methods/extras/joinVoiceChat.js +0 -22
  558. package/rubjs/methods/extras/leaveChat.d.ts +0 -3
  559. package/rubjs/methods/extras/leaveChat.js +0 -20
  560. package/rubjs/methods/extras/onEditMessages.d.ts +0 -3
  561. package/rubjs/methods/extras/onEditMessages.js +0 -41
  562. package/rubjs/methods/extras/reportObject.d.ts +0 -14
  563. package/rubjs/methods/extras/reportObject.js +0 -32
  564. package/rubjs/methods/extras/searchGlobalObjects.d.ts +0 -3
  565. package/rubjs/methods/extras/searchGlobalObjects.js +0 -17
  566. package/rubjs/methods/extras/sendVoiceChatActivity.d.ts +0 -3
  567. package/rubjs/methods/extras/sendVoiceChatActivity.js +0 -24
  568. package/rubjs/methods/extras/setVoiceChatState.d.ts +0 -3
  569. package/rubjs/methods/extras/setVoiceChatState.js +0 -25
  570. package/rubjs/methods/extras/transcribeVoice.d.ts +0 -3
  571. package/rubjs/methods/extras/transcribeVoice.js +0 -17
  572. package/rubjs/methods/extras/userIsAdmin.d.ts +0 -3
  573. package/rubjs/methods/extras/userIsAdmin.js +0 -29
  574. package/rubjs/methods/gif/addToMyGifSet.d.ts +0 -3
  575. package/rubjs/methods/gif/addToMyGifSet.js +0 -17
  576. package/rubjs/methods/gif/getMyGifSet.d.ts +0 -3
  577. package/rubjs/methods/gif/getMyGifSet.js +0 -17
  578. package/rubjs/methods/gif/removeFromMyGifSet.d.ts +0 -3
  579. package/rubjs/methods/gif/removeFromMyGifSet.js +0 -17
  580. package/rubjs/methods/groups/addGroup.d.ts +0 -3
  581. package/rubjs/methods/groups/addGroup.js +0 -19
  582. package/rubjs/methods/groups/addGroupMembers.d.ts +0 -3
  583. package/rubjs/methods/groups/addGroupMembers.js +0 -19
  584. package/rubjs/methods/groups/banGroupMember.d.ts +0 -3
  585. package/rubjs/methods/groups/banGroupMember.js +0 -25
  586. package/rubjs/methods/groups/createGroupVoiceChat.d.ts +0 -3
  587. package/rubjs/methods/groups/createGroupVoiceChat.js +0 -17
  588. package/rubjs/methods/groups/deleteNoAccessGroupChat.d.ts +0 -3
  589. package/rubjs/methods/groups/deleteNoAccessGroupChat.js +0 -17
  590. package/rubjs/methods/groups/discardGroupVoiceChat.d.ts +0 -3
  591. package/rubjs/methods/groups/discardGroupVoiceChat.js +0 -20
  592. package/rubjs/methods/groups/editGroupInfo.d.ts +0 -6
  593. package/rubjs/methods/groups/editGroupInfo.js +0 -52
  594. package/rubjs/methods/groups/getBannedGroupMembers.d.ts +0 -3
  595. package/rubjs/methods/groups/getBannedGroupMembers.js +0 -17
  596. package/rubjs/methods/groups/getGroupAdminAccessList.d.ts +0 -3
  597. package/rubjs/methods/groups/getGroupAdminAccessList.js +0 -20
  598. package/rubjs/methods/groups/getGroupAdminMembers.d.ts +0 -3
  599. package/rubjs/methods/groups/getGroupAdminMembers.js +0 -17
  600. package/rubjs/methods/groups/getGroupAllMembers.d.ts +0 -3
  601. package/rubjs/methods/groups/getGroupAllMembers.js +0 -21
  602. package/rubjs/methods/groups/getGroupDefaultAccess.d.ts +0 -3
  603. package/rubjs/methods/groups/getGroupDefaultAccess.js +0 -17
  604. package/rubjs/methods/groups/getGroupInfo.d.ts +0 -3
  605. package/rubjs/methods/groups/getGroupInfo.js +0 -17
  606. package/rubjs/methods/groups/getGroupLink.d.ts +0 -3
  607. package/rubjs/methods/groups/getGroupLink.js +0 -17
  608. package/rubjs/methods/groups/getGroupMentionList.d.ts +0 -3
  609. package/rubjs/methods/groups/getGroupMentionList.js +0 -20
  610. package/rubjs/methods/groups/getGroupOnlineCount.d.ts +0 -3
  611. package/rubjs/methods/groups/getGroupOnlineCount.js +0 -17
  612. package/rubjs/methods/groups/getGroupVoiceChatParticipants.d.ts +0 -3
  613. package/rubjs/methods/groups/getGroupVoiceChatParticipants.js +0 -18
  614. package/rubjs/methods/groups/getGroupVoiceChatUpdates.d.ts +0 -3
  615. package/rubjs/methods/groups/getGroupVoiceChatUpdates.js +0 -21
  616. package/rubjs/methods/groups/groupPreviewByJoinLink.d.ts +0 -3
  617. package/rubjs/methods/groups/groupPreviewByJoinLink.js +0 -19
  618. package/rubjs/methods/groups/joinGroup.d.ts +0 -3
  619. package/rubjs/methods/groups/joinGroup.js +0 -19
  620. package/rubjs/methods/groups/joinGroupVoiceChat.d.ts +0 -3
  621. package/rubjs/methods/groups/joinGroupVoiceChat.js +0 -22
  622. package/rubjs/methods/groups/leaveGroup.d.ts +0 -3
  623. package/rubjs/methods/groups/leaveGroup.js +0 -17
  624. package/rubjs/methods/groups/leaveGroupVoiceChat.d.ts +0 -3
  625. package/rubjs/methods/groups/leaveGroupVoiceChat.js +0 -20
  626. package/rubjs/methods/groups/removeGroup.d.ts +0 -3
  627. package/rubjs/methods/groups/removeGroup.js +0 -17
  628. package/rubjs/methods/groups/seenGroupMessages.d.ts +0 -3
  629. package/rubjs/methods/groups/seenGroupMessages.js +0 -21
  630. package/rubjs/methods/groups/setGroupAdmin.d.ts +0 -5
  631. package/rubjs/methods/groups/setGroupAdmin.js +0 -28
  632. package/rubjs/methods/groups/setGroupDefaultAccess.d.ts +0 -4
  633. package/rubjs/methods/groups/setGroupDefaultAccess.js +0 -22
  634. package/rubjs/methods/groups/setGroupLink.d.ts +0 -3
  635. package/rubjs/methods/groups/setGroupLink.js +0 -17
  636. package/rubjs/methods/groups/setGroupVoiceChatSetting.d.ts +0 -3
  637. package/rubjs/methods/groups/setGroupVoiceChatSetting.js +0 -26
  638. package/rubjs/methods/index.d.ts +0 -203
  639. package/rubjs/methods/index.js +0 -967
  640. package/rubjs/methods/messages/actionOnMessageReaction.d.ts +0 -3
  641. package/rubjs/methods/messages/actionOnMessageReaction.js +0 -25
  642. package/rubjs/methods/messages/createPoll.d.ts +0 -3
  643. package/rubjs/methods/messages/createPoll.js +0 -37
  644. package/rubjs/methods/messages/deleteMessages.d.ts +0 -3
  645. package/rubjs/methods/messages/deleteMessages.js +0 -28
  646. package/rubjs/methods/messages/editMessage.d.ts +0 -3
  647. package/rubjs/methods/messages/editMessage.js +0 -23
  648. package/rubjs/methods/messages/forwardMessages.d.ts +0 -3
  649. package/rubjs/methods/messages/forwardMessages.js +0 -31
  650. package/rubjs/methods/messages/getMessageShareUrl.d.ts +0 -3
  651. package/rubjs/methods/messages/getMessageShareUrl.js +0 -17
  652. package/rubjs/methods/messages/getMessages.d.ts +0 -3
  653. package/rubjs/methods/messages/getMessages.js +0 -23
  654. package/rubjs/methods/messages/getMessagesByID.d.ts +0 -3
  655. package/rubjs/methods/messages/getMessagesByID.js +0 -22
  656. package/rubjs/methods/messages/getMessagesInterval.d.ts +0 -3
  657. package/rubjs/methods/messages/getMessagesInterval.js +0 -20
  658. package/rubjs/methods/messages/getMessagesUpdates.d.ts +0 -3
  659. package/rubjs/methods/messages/getMessagesUpdates.js +0 -17
  660. package/rubjs/methods/messages/getPollOptionVoters.d.ts +0 -3
  661. package/rubjs/methods/messages/getPollOptionVoters.js +0 -21
  662. package/rubjs/methods/messages/getPollStatus.d.ts +0 -3
  663. package/rubjs/methods/messages/getPollStatus.js +0 -17
  664. package/rubjs/methods/messages/index.d.ts +0 -27
  665. package/rubjs/methods/messages/index.js +0 -58
  666. package/rubjs/methods/messages/requestSendFile.d.ts +0 -4
  667. package/rubjs/methods/messages/requestSendFile.js +0 -22
  668. package/rubjs/methods/messages/sendDocument.d.ts +0 -3
  669. package/rubjs/methods/messages/sendDocument.js +0 -17
  670. package/rubjs/methods/messages/sendFileInline.d.ts +0 -18
  671. package/rubjs/methods/messages/sendFileInline.js +0 -35
  672. package/rubjs/methods/messages/sendGif.d.ts +0 -3
  673. package/rubjs/methods/messages/sendGif.js +0 -17
  674. package/rubjs/methods/messages/sendMessage.d.ts +0 -3
  675. package/rubjs/methods/messages/sendMessage.js +0 -149
  676. package/rubjs/methods/messages/sendMusic.d.ts +0 -3
  677. package/rubjs/methods/messages/sendMusic.js +0 -17
  678. package/rubjs/methods/messages/sendPhoto.d.ts +0 -3
  679. package/rubjs/methods/messages/sendPhoto.js +0 -17
  680. package/rubjs/methods/messages/sendSticker.d.ts +0 -3
  681. package/rubjs/methods/messages/sendSticker.js +0 -17
  682. package/rubjs/methods/messages/sendText.d.ts +0 -3
  683. package/rubjs/methods/messages/sendText.js +0 -17
  684. package/rubjs/methods/messages/sendVideo.d.ts +0 -3
  685. package/rubjs/methods/messages/sendVideo.js +0 -17
  686. package/rubjs/methods/messages/sendVideoMessage.d.ts +0 -3
  687. package/rubjs/methods/messages/sendVideoMessage.js +0 -17
  688. package/rubjs/methods/messages/sendVoice.d.ts +0 -3
  689. package/rubjs/methods/messages/sendVoice.js +0 -17
  690. package/rubjs/methods/messages/setPinMessage.d.ts +0 -3
  691. package/rubjs/methods/messages/setPinMessage.js +0 -25
  692. package/rubjs/methods/messages/votePoll.d.ts +0 -3
  693. package/rubjs/methods/messages/votePoll.js +0 -17
  694. package/rubjs/methods/settings/changePassword.d.ts +0 -3
  695. package/rubjs/methods/settings/changePassword.js +0 -17
  696. package/rubjs/methods/settings/checkTwoStepPasscode.d.ts +0 -3
  697. package/rubjs/methods/settings/checkTwoStepPasscode.js +0 -17
  698. package/rubjs/methods/settings/deleteFolder.d.ts +0 -3
  699. package/rubjs/methods/settings/deleteFolder.js +0 -17
  700. package/rubjs/methods/settings/getBlockedUsers.d.ts +0 -3
  701. package/rubjs/methods/settings/getBlockedUsers.js +0 -17
  702. package/rubjs/methods/settings/getFolders.d.ts +0 -3
  703. package/rubjs/methods/settings/getFolders.js +0 -17
  704. package/rubjs/methods/settings/getMySessions.d.ts +0 -3
  705. package/rubjs/methods/settings/getMySessions.js +0 -17
  706. package/rubjs/methods/settings/getPrivacySetting.d.ts +0 -3
  707. package/rubjs/methods/settings/getPrivacySetting.js +0 -17
  708. package/rubjs/methods/settings/getSuggestedFolders.d.ts +0 -3
  709. package/rubjs/methods/settings/getSuggestedFolders.js +0 -17
  710. package/rubjs/methods/settings/getTwoPasscodeStatus.d.ts +0 -3
  711. package/rubjs/methods/settings/getTwoPasscodeStatus.js +0 -17
  712. package/rubjs/methods/settings/requestRecoveryEmail.d.ts +0 -3
  713. package/rubjs/methods/settings/requestRecoveryEmail.js +0 -20
  714. package/rubjs/methods/settings/setSetting.d.ts +0 -5
  715. package/rubjs/methods/settings/setSetting.js +0 -60
  716. package/rubjs/methods/settings/setupTwoStepVerification.d.ts +0 -3
  717. package/rubjs/methods/settings/setupTwoStepVerification.js +0 -21
  718. package/rubjs/methods/settings/terminateOtherSessions.d.ts +0 -3
  719. package/rubjs/methods/settings/terminateOtherSessions.js +0 -18
  720. package/rubjs/methods/settings/terminateSession.d.ts +0 -3
  721. package/rubjs/methods/settings/terminateSession.js +0 -17
  722. package/rubjs/methods/settings/turnOffTwoStep.d.ts +0 -3
  723. package/rubjs/methods/settings/turnOffTwoStep.js +0 -18
  724. package/rubjs/methods/settings/updateProfile.d.ts +0 -3
  725. package/rubjs/methods/settings/updateProfile.js +0 -30
  726. package/rubjs/methods/settings/updateUsername.d.ts +0 -3
  727. package/rubjs/methods/settings/updateUsername.js +0 -17
  728. package/rubjs/methods/settings/verifyRecoveryEmail.d.ts +0 -3
  729. package/rubjs/methods/settings/verifyRecoveryEmail.js +0 -17
  730. package/rubjs/methods/stickers/actionOnStickerSet.d.ts +0 -3
  731. package/rubjs/methods/stickers/actionOnStickerSet.js +0 -21
  732. package/rubjs/methods/stickers/getMyStickerSets.d.ts +0 -3
  733. package/rubjs/methods/stickers/getMyStickerSets.js +0 -17
  734. package/rubjs/methods/stickers/getStickerSetByID.d.ts +0 -3
  735. package/rubjs/methods/stickers/getStickerSetByID.js +0 -17
  736. package/rubjs/methods/stickers/getStickersByEmoji.d.ts +0 -3
  737. package/rubjs/methods/stickers/getStickersByEmoji.js +0 -17
  738. package/rubjs/methods/stickers/getStickersBySetIds.d.ts +0 -3
  739. package/rubjs/methods/stickers/getStickersBySetIds.js +0 -19
  740. package/rubjs/methods/stickers/getTrendStickerSets.d.ts +0 -3
  741. package/rubjs/methods/stickers/getTrendStickerSets.js +0 -17
  742. package/rubjs/methods/stickers/searchStickers.d.ts +0 -3
  743. package/rubjs/methods/stickers/searchStickers.js +0 -17
  744. package/rubjs/methods/users/checkUserUsername.d.ts +0 -3
  745. package/rubjs/methods/users/checkUserUsername.js +0 -17
  746. package/rubjs/methods/users/deleteUserChat.d.ts +0 -3
  747. package/rubjs/methods/users/deleteUserChat.js +0 -20
  748. package/rubjs/methods/users/getMe.d.ts +0 -3
  749. package/rubjs/methods/users/getMe.js +0 -17
  750. package/rubjs/methods/users/getUserInfo.d.ts +0 -4
  751. package/rubjs/methods/users/getUserInfo.js +0 -18
  752. package/rubjs/methods/users/setBlockUser.d.ts +0 -3
  753. package/rubjs/methods/users/setBlockUser.js +0 -20
  754. package/rubjs/methods/utilities/download.d.ts +0 -4
  755. package/rubjs/methods/utilities/download.js +0 -17
  756. package/rubjs/methods/utilities/downloadProfilePicture.d.ts +0 -3
  757. package/rubjs/methods/utilities/downloadProfilePicture.js +0 -27
  758. package/rubjs/methods/utilities/get.d.ts +0 -4
  759. package/rubjs/methods/utilities/get.js +0 -21
  760. package/rubjs/methods/utilities/index.d.ts +0 -8
  761. package/rubjs/methods/utilities/index.js +0 -20
  762. package/rubjs/methods/utilities/post.d.ts +0 -4
  763. package/rubjs/methods/utilities/post.js +0 -21
  764. package/rubjs/methods/utilities/run.d.ts +0 -3
  765. package/rubjs/methods/utilities/run.js +0 -24
  766. package/rubjs/methods/utilities/start.d.ts +0 -3
  767. package/rubjs/methods/utilities/start.js +0 -82
  768. package/rubjs/methods/utilities/thumbnail.js +0 -85
  769. package/rubjs/network/index.d.ts +0 -37
  770. package/rubjs/network/index.js +0 -405
  771. package/rubjs/network/loginNetwork.d.ts +0 -39
  772. package/rubjs/network/loginNetwork.js +0 -122
  773. package/rubjs/session/index.d.ts +0 -23
  774. package/rubjs/session/index.js +0 -65
  775. package/rubjs/types/auth.d.ts +0 -40
  776. package/rubjs/types/chats.d.ts +0 -79
  777. package/rubjs/types/decorators.d.ts +0 -170
  778. package/rubjs/types/groups.d.ts +0 -155
  779. package/rubjs/types/index.d.ts +0 -8
  780. package/rubjs/types/index.js +0 -53
  781. package/rubjs/types/message.d.ts +0 -26
  782. package/rubjs/types/message.js +0 -81
  783. package/rubjs/types/messages.d.ts +0 -178
  784. package/rubjs/types/messages.js +0 -2
  785. package/rubjs/types/users.d.ts +0 -64
  786. package/rubjs/types/users.js +0 -2
  787. package/rubjs/utils/filters.d.ts +0 -33
  788. package/rubjs/utils/filters.js +0 -167
  789. package/rubjs/utils/index.d.ts +0 -3
  790. package/rubjs/utils/index.js +0 -10
  791. /package/{rubjs → lib/core}/methods/advanced/index.d.ts +0 -0
  792. /package/{rubjs → lib/core}/methods/advanced/index.js +0 -0
  793. /package/{rubjs → lib/core}/methods/auth/index.d.ts +0 -0
  794. /package/{rubjs → lib/core}/methods/auth/index.js +0 -0
  795. /package/{rubjs → lib/core}/methods/channels/index.d.ts +0 -0
  796. /package/{rubjs → lib/core}/methods/channels/index.js +0 -0
  797. /package/{rubjs → lib/core}/methods/chats/index.d.ts +0 -0
  798. /package/{rubjs → lib/core}/methods/chats/index.js +0 -0
  799. /package/{rubjs → lib/core}/methods/contacts/index.d.ts +0 -0
  800. /package/{rubjs → lib/core}/methods/contacts/index.js +0 -0
  801. /package/{rubjs → lib/core}/methods/extras/index.d.ts +0 -0
  802. /package/{rubjs → lib/core}/methods/extras/index.js +0 -0
  803. /package/{rubjs → lib/core}/methods/gif/index.d.ts +0 -0
  804. /package/{rubjs → lib/core}/methods/gif/index.js +0 -0
  805. /package/{rubjs → lib/core}/methods/groups/index.d.ts +0 -0
  806. /package/{rubjs → lib/core}/methods/groups/index.js +0 -0
  807. /package/{rubjs → lib/core}/methods/settings/index.d.ts +0 -0
  808. /package/{rubjs → lib/core}/methods/settings/index.js +0 -0
  809. /package/{rubjs → lib/core}/methods/stickers/index.d.ts +0 -0
  810. /package/{rubjs → lib/core}/methods/stickers/index.js +0 -0
  811. /package/{rubjs → lib/core}/methods/users/index.d.ts +0 -0
  812. /package/{rubjs → lib/core}/methods/users/index.js +0 -0
  813. /package/{rubjs → lib/core}/methods/utilities/thumbnail.d.ts +0 -0
  814. /package/{rubjs/parser/index.d.ts → lib/core/parser.d.ts} +0 -0
  815. /package/{rubjs/parser/index.js → lib/core/parser.js} +0 -0
  816. /package/{rubjs/utils → lib/core}/utils.d.ts +0 -0
  817. /package/{rubjs/utils → lib/core}/utils.js +0 -0
  818. /package/{rubjs/types/auth.js → lib/types/client.type.js} +0 -0
  819. /package/{rubjs/types/chats.js → lib/types/decorators.type.js} +0 -0
  820. /package/{rubjs/types/decorators.js → lib/types/network.type.js} +0 -0
  821. /package/{rubjs/types/groups.js → lib/types/session.type.js} +0 -0
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const promises_1 = __importDefault(require("fs/promises"));
7
+ const path_1 = __importDefault(require("path"));
8
+ const os_1 = __importDefault(require("os"));
9
+ const optional_require_1 = require("optional-require");
10
+ const sharp = (0, optional_require_1.optionalRequire)('sharp', { default: true });
11
+ const ffmpeg = (0, optional_require_1.optionalRequire)('fluent-ffmpeg', { default: true });
12
+ class ThumbnailGenerator {
13
+ static async getTime(videoPath) {
14
+ if (!ffmpeg) {
15
+ throw new Error('fluent-ffmpeg module is not installed. Some features may be disabled.');
16
+ }
17
+ return new Promise((resolve, reject) => {
18
+ ffmpeg.ffprobe(videoPath, (err, metadata) => {
19
+ if (err) {
20
+ console.error('Error fetching metadata:', err);
21
+ reject(err);
22
+ return;
23
+ }
24
+ resolve(metadata.format.duration);
25
+ });
26
+ });
27
+ }
28
+ static async fromVideo(videoPath) {
29
+ if (!ffmpeg) {
30
+ throw new Error('fluent-ffmpeg module is not installed. Some features may be disabled.');
31
+ }
32
+ const tempImagePath = path_1.default.join(os_1.default.tmpdir(), `thumbnail_${Date.now()}.png`);
33
+ try {
34
+ await new Promise((resolve, reject) => {
35
+ ffmpeg(videoPath)
36
+ .on('end', () => resolve(undefined))
37
+ .on('error', reject)
38
+ .screenshots({
39
+ count: 1,
40
+ timemarks: ['00:00:00.000'],
41
+ filename: path_1.default.basename(tempImagePath),
42
+ folder: path_1.default.dirname(tempImagePath),
43
+ size: '400x?',
44
+ });
45
+ });
46
+ const thumbnailBuffer = await promises_1.default.readFile(tempImagePath);
47
+ const base64Thumbnail = thumbnailBuffer.toString('base64');
48
+ await promises_1.default.unlink(tempImagePath);
49
+ return base64Thumbnail;
50
+ }
51
+ catch (error) {
52
+ console.error('Error generating video thumbnail:', error);
53
+ throw error;
54
+ }
55
+ }
56
+ static async fromImage(imagePath, width = 320) {
57
+ if (!sharp) {
58
+ throw new Error('sharp module is not installed. Some features may be disabled.');
59
+ }
60
+ try {
61
+ const buffer = await sharp(imagePath).resize(width).toBuffer();
62
+ return buffer.toString('base64');
63
+ }
64
+ catch (error) {
65
+ console.error('Error generating image thumbnail:', error);
66
+ throw error;
67
+ }
68
+ }
69
+ }
70
+ exports.default = ThumbnailGenerator;
@@ -0,0 +1,4 @@
1
+ import { ClientTypes } from "../../../types/index.type";
2
+ import Client from "../../client";
3
+ declare function useError(this: Client, mw: ClientTypes.ErrorMiddleware): Promise<void>;
4
+ export default useError;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ async function useError(mw) {
4
+ this.errorMiddlewares.push(mw);
5
+ }
6
+ exports.default = useError;
@@ -0,0 +1,4 @@
1
+ import { ClientTypes } from '../../../types/index.type';
2
+ import Client from '../../client';
3
+ declare function usePlugin(this: Client, plugin: ClientTypes.RubPlugin): Promise<void>;
4
+ export default usePlugin;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ async function usePlugin(plugin) {
4
+ const existingIndex = this.plugins.findIndex((p) => p.name === plugin.name);
5
+ if (existingIndex !== -1) {
6
+ const existing = this.plugins[existingIndex];
7
+ if (existing.version &&
8
+ plugin.version &&
9
+ existing.version === plugin.version) {
10
+ console.warn(`[usePlugin] Plugin "${plugin.name}" version ${plugin.version} is already registered.`);
11
+ return;
12
+ }
13
+ console.log(`[usePlugin] Replacing plugin "${plugin.name}" version ${existing.version ?? 'unknown'} with version ${plugin.version ?? 'unknown'}.`);
14
+ this.plugins.splice(existingIndex, 1);
15
+ }
16
+ try {
17
+ await plugin.run(this);
18
+ this.plugins.push(plugin);
19
+ console.log(`[usePlugin] Plugin "${plugin.name}" version ${plugin.version ?? 'unknown'} loaded successfully.`);
20
+ }
21
+ catch (error) {
22
+ console.error(`[usePlugin] Failed to run plugin "${plugin.name}":`, error);
23
+ }
24
+ }
25
+ exports.default = usePlugin;
@@ -0,0 +1,49 @@
1
+ import { NetworkTypes } from '../types/index.type';
2
+ import Client from './client';
3
+ export default class Network {
4
+ private client;
5
+ headers: Record<string, string>;
6
+ userAgent: string;
7
+ defaultPlatform: NetworkTypes.Platform;
8
+ private apiVersion;
9
+ private agent;
10
+ private apiUrl?;
11
+ private wssUrl?;
12
+ private ws?;
13
+ private heartbeatInterval?;
14
+ private inactivityTimeout?;
15
+ private reconnecting;
16
+ constructor(client: Client);
17
+ /**
18
+ * Retrieves API and WSS server URLs
19
+ */
20
+ getDcs(): Promise<boolean>;
21
+ /**
22
+ * Sends a POST request with retry logic and enhanced error reporting
23
+ */
24
+ request(url: string, data: Record<string, any>): Promise<any>;
25
+ send({ input, method, tmp_session, }: {
26
+ input?: Record<string, any>;
27
+ method?: string;
28
+ tmp_session: boolean;
29
+ }): Promise<any>;
30
+ getUpdates(): Promise<void>;
31
+ handleConnect(): Promise<void>;
32
+ handleMessage(message: string): Promise<void>;
33
+ private runMiddlewareChain;
34
+ resetConnection(): Promise<void>;
35
+ private resetInactivityTimer;
36
+ uploadFile(filePath: string, chunkSize?: number): Promise<any>;
37
+ /**
38
+ * Delay utility
39
+ */
40
+ delay(ms: number): Promise<void>;
41
+ /**
42
+ * Resolves platform configuration based on input
43
+ */
44
+ private resolvePlatform;
45
+ /**
46
+ * Builds HTTP headers based on platform
47
+ */
48
+ private buildHeaders;
49
+ }
@@ -0,0 +1,436 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const undici_1 = require("undici");
7
+ const user_agents_1 = __importDefault(require("user-agents"));
8
+ const index_type_1 = require("../types/index.type");
9
+ const crypto_1 = __importDefault(require("./crypto"));
10
+ const fs_1 = __importDefault(require("fs"));
11
+ const path_1 = __importDefault(require("path"));
12
+ const chat_type_1 = __importDefault(require("../types/chat.type"));
13
+ const notifications_type_1 = __importDefault(require("../types/notifications.type"));
14
+ const types = {
15
+ activities: 'show_activities',
16
+ chat: 'chat_updates',
17
+ message: 'message_updates',
18
+ notifications: 'show_notifications',
19
+ };
20
+ class Network {
21
+ constructor(client) {
22
+ this.client = client;
23
+ this.userAgent = new user_agents_1.default().toString();
24
+ this.apiVersion = '6';
25
+ this.reconnecting = false;
26
+ this.defaultPlatform = this.resolvePlatform(client.platform);
27
+ this.headers = this.buildHeaders(client.platform);
28
+ this.agent = new undici_1.Agent({
29
+ connect: {
30
+ rejectUnauthorized: false,
31
+ },
32
+ });
33
+ }
34
+ /**
35
+ * Retrieves API and WSS server URLs
36
+ */
37
+ async getDcs() {
38
+ const url = 'https://getdcmess.iranlms.ir/';
39
+ const RETRY_DELAY = 3000;
40
+ while (true) {
41
+ try {
42
+ const res = await (0, undici_1.request)(url, {
43
+ method: 'GET',
44
+ dispatcher: this.agent,
45
+ });
46
+ if (res.statusCode === 200) {
47
+ const body = (await res.body.json());
48
+ if (body?.data) {
49
+ const dcs = body.data;
50
+ this.apiUrl = `${dcs.API[dcs.default_api]}/`;
51
+ this.wssUrl = dcs.socket[dcs.default_socket];
52
+ return true;
53
+ }
54
+ }
55
+ console.warn('[getDcs] Unexpected status or data format:', res.statusCode);
56
+ }
57
+ catch (error) {
58
+ console.error('[getDcs] Error:', error);
59
+ }
60
+ await this.delay(RETRY_DELAY);
61
+ }
62
+ }
63
+ /**
64
+ * Sends a POST request with retry logic and enhanced error reporting
65
+ */
66
+ async request(url, data) {
67
+ const MAX_ATTEMPTS = 3;
68
+ for (let attempt = 1; attempt <= MAX_ATTEMPTS; attempt++) {
69
+ try {
70
+ const res = await (0, undici_1.request)(url, {
71
+ method: 'POST',
72
+ headers: {
73
+ 'content-type': 'application/json',
74
+ ...this.headers,
75
+ },
76
+ body: JSON.stringify(data),
77
+ dispatcher: this.agent,
78
+ });
79
+ if (res.statusCode === 200) {
80
+ const responseData = await res.body.json();
81
+ return responseData;
82
+ }
83
+ else {
84
+ console.warn(`[request] Attempt ${attempt}: Unexpected status ${res.statusCode}`);
85
+ }
86
+ }
87
+ catch (error) {
88
+ console.error(`[request] Attempt ${attempt} failed:`, error);
89
+ }
90
+ await this.delay(1000);
91
+ }
92
+ throw new Error(`[request] Failed after ${MAX_ATTEMPTS} attempts: ${url}`);
93
+ }
94
+ async send({ input = {}, method = 'getUserInfo', tmp_session, }) {
95
+ while (!this.apiUrl) {
96
+ await this.getDcs();
97
+ await this.delay(1000);
98
+ }
99
+ const { auth, decode_auth, key, privateKey } = this.client;
100
+ if (!key)
101
+ return;
102
+ const credentialsKey = tmp_session ? 'tmp_session' : 'auth';
103
+ const credentialsValue = tmp_session ? auth : decode_auth;
104
+ const payload = {
105
+ api_version: this.apiVersion,
106
+ [credentialsKey]: credentialsValue,
107
+ };
108
+ const dataPayload = JSON.stringify({
109
+ client: this.defaultPlatform,
110
+ method,
111
+ input,
112
+ });
113
+ payload.data_enc = crypto_1.default.encrypt(dataPayload, key);
114
+ if (!tmp_session && privateKey) {
115
+ payload.sign = crypto_1.default.sign(payload.data_enc, privateKey);
116
+ }
117
+ return this.request(this.apiUrl, payload);
118
+ }
119
+ async getUpdates() {
120
+ while (!this.wssUrl) {
121
+ await this.getDcs();
122
+ await this.delay(1000);
123
+ }
124
+ this.ws = new undici_1.WebSocket(this.wssUrl);
125
+ this.ws.addEventListener('open', async () => {
126
+ await this.handleConnect();
127
+ this.resetInactivityTimer();
128
+ });
129
+ this.ws.addEventListener('message', async (event) => {
130
+ await this.handleMessage(event.data);
131
+ this.resetInactivityTimer();
132
+ });
133
+ this.ws.addEventListener('error', async (event) => {
134
+ if (!this.reconnecting) {
135
+ console.error('WebSocket error, reconnecting...');
136
+ this.reconnecting = true;
137
+ await this.resetConnection();
138
+ }
139
+ });
140
+ this.ws.addEventListener('close', async () => {
141
+ if (!this.reconnecting) {
142
+ console.warn('WebSocket closed, reconnecting...');
143
+ this.reconnecting = true;
144
+ await this.resetConnection();
145
+ }
146
+ });
147
+ }
148
+ async handleConnect() {
149
+ console.log('Start Bot..');
150
+ if (this.ws?.readyState === undici_1.WebSocket.OPEN) {
151
+ this.ws?.send(JSON.stringify({
152
+ api_version: '5',
153
+ auth: this.client.auth,
154
+ data: '',
155
+ method: 'handShake',
156
+ }));
157
+ }
158
+ if (this.heartbeatInterval)
159
+ clearInterval(this.heartbeatInterval);
160
+ this.heartbeatInterval = setInterval(() => {
161
+ if (this.ws?.readyState === WebSocket.OPEN) {
162
+ this.ws.send(JSON.stringify({}));
163
+ }
164
+ }, 30000);
165
+ }
166
+ async handleMessage(message) {
167
+ const { data_enc } = JSON.parse(message);
168
+ if (!data_enc || !this.client.key)
169
+ return;
170
+ const update = JSON.parse(crypto_1.default.decrypt(data_enc, this.client.key));
171
+ for (let [event, data] of Object.entries(this.client.handlers)) {
172
+ if (data.length === 0)
173
+ continue;
174
+ // has message
175
+ const updates = update[types[event]];
176
+ if (!Array.isArray(updates) || updates.length === 0)
177
+ continue;
178
+ // get user name
179
+ let username = null;
180
+ const notification = update.show_notifications?.[0];
181
+ const chatUpdate = update.chat_updates?.[0];
182
+ if (notification) {
183
+ const objectGuid = notification?.message_data?.object_guid;
184
+ if (objectGuid?.startsWith('u0'))
185
+ username = notification.title;
186
+ else if (objectGuid?.startsWith('g0'))
187
+ username = notification.text?.split(':')[0];
188
+ }
189
+ else if (chatUpdate) {
190
+ username =
191
+ chatUpdate.chat?.last_message?.author_title || 'Unknown User';
192
+ }
193
+ else
194
+ username = 'Unknown User';
195
+ // start handlers
196
+ for (let messageData of updates) {
197
+ messageData = {
198
+ client_guid: this.client.userGuid,
199
+ ...messageData,
200
+ message: {
201
+ author_title: username,
202
+ ...messageData.message,
203
+ },
204
+ };
205
+ for (const chain of data) {
206
+ await this.runMiddlewareChain(event, chain, messageData, this.client);
207
+ }
208
+ }
209
+ }
210
+ if (update?.message_updates) {
211
+ for (let ctx of update.message_updates) {
212
+ ctx = new index_type_1.Message(this.client, ctx);
213
+ for (const { middlewares, pattern } of this.client.cmd) {
214
+ const text = ctx.message?.text;
215
+ if (!text)
216
+ return;
217
+ if ((typeof pattern === 'string' && text === pattern) ||
218
+ (pattern instanceof RegExp && pattern.test(text))) {
219
+ await this.runMiddlewareChain('message', middlewares, ctx, this.client);
220
+ }
221
+ }
222
+ }
223
+ }
224
+ }
225
+ async runMiddlewareChain(event, middlewares, ctx, client) {
226
+ let index = -1;
227
+ if (event === 'message') {
228
+ ctx = new index_type_1.Message(client, ctx);
229
+ }
230
+ else if (event === 'chat') {
231
+ ctx = new chat_type_1.default(client, ctx);
232
+ }
233
+ else if (event === 'activities') {
234
+ ctx = new index_type_1.Activities(client, ctx);
235
+ }
236
+ else if (event === 'notifications') {
237
+ ctx = new notifications_type_1.default(client, ctx);
238
+ }
239
+ const dispatch = async (i) => {
240
+ if (i <= index)
241
+ throw new Error('next() called multiple times');
242
+ index = i;
243
+ if (i === middlewares.length)
244
+ return;
245
+ const fn = middlewares[i];
246
+ try {
247
+ await fn(ctx, () => dispatch(i + 1));
248
+ }
249
+ catch (err) {
250
+ await this.client.runErrorMiddlewares(err, ctx);
251
+ }
252
+ };
253
+ await dispatch(0);
254
+ }
255
+ async resetConnection() {
256
+ this.ws?.close();
257
+ this.ws = undefined;
258
+ setTimeout(async () => {
259
+ await this.getUpdates();
260
+ this.reconnecting = false;
261
+ }, 5000);
262
+ }
263
+ resetInactivityTimer() {
264
+ clearTimeout(this.inactivityTimeout);
265
+ this.inactivityTimeout = setTimeout(async () => {
266
+ console.warn('No updates received for 10 minutes. Reconnecting WebSocket...');
267
+ await this.resetConnection();
268
+ }, 10 * 60 * 1000);
269
+ }
270
+ async uploadFile(filePath, chunkSize = 1048576) {
271
+ if (!fs_1.default.existsSync(filePath))
272
+ throw new Error('File not found in the given path');
273
+ const stat = await fs_1.default.promises.stat(filePath);
274
+ const fileSize = stat.size;
275
+ const fileName = path_1.default.basename(filePath);
276
+ const mime = filePath.split('.').pop();
277
+ let result = await this.client.requestSendFile(fileName, fileSize, mime);
278
+ let id = result.id;
279
+ let dc_id = result.dc_id;
280
+ let upload_url = result.upload_url;
281
+ let access_hash_send = result.access_hash_send;
282
+ let totalParts = Math.ceil(fileSize / chunkSize);
283
+ const stream = fs_1.default.createReadStream(filePath, { highWaterMark: chunkSize });
284
+ let index = 0;
285
+ for await (const chunk of stream) {
286
+ try {
287
+ const res = await (0, undici_1.request)(upload_url, {
288
+ method: 'POST',
289
+ headers: {
290
+ auth: this.client.auth,
291
+ 'file-id': id,
292
+ 'total-part': totalParts.toString(),
293
+ 'part-number': (index + 1).toString(),
294
+ 'chunk-size': chunk.length.toString(),
295
+ 'access-hash-send': access_hash_send,
296
+ },
297
+ body: chunk,
298
+ dispatcher: this.agent,
299
+ });
300
+ const response = await res.body.json();
301
+ if (response.status === 'ERROR_TRY_AGAIN') {
302
+ console.log('Retrying upload...');
303
+ stream.close();
304
+ result = await this.client.requestSendFile(fileName, fileSize, mime);
305
+ id = result.id;
306
+ dc_id = result.dc_id;
307
+ upload_url = result.upload_url;
308
+ access_hash_send = result.access_hash_send;
309
+ index = 0;
310
+ return this.uploadFile(filePath, chunkSize);
311
+ }
312
+ index++;
313
+ if (response.status === 'OK' &&
314
+ response.status_det === 'OK' &&
315
+ response.data?.access_hash_rec) {
316
+ return {
317
+ mime,
318
+ size: fileSize,
319
+ dc_id,
320
+ file_id: id,
321
+ file_name: fileName,
322
+ access_hash_rec: response.data.access_hash_rec,
323
+ };
324
+ }
325
+ }
326
+ catch (error) {
327
+ console.error('Upload error:', error);
328
+ await new Promise((resolve) => setTimeout(resolve, 5000));
329
+ }
330
+ }
331
+ throw new Error('Upload failed completely.');
332
+ }
333
+ // async download(
334
+ // dc_id: number,
335
+ // file_id: number,
336
+ // access_hash: string,
337
+ // size: number,
338
+ // chunk: number = 131072,
339
+ // callback?: (totalSize: number, downloadedSize: number) => Promise<void>,
340
+ // speed: boolean = false
341
+ // ): Promise<Buffer> {
342
+ // const headers = {
343
+ // auth: this.client.auth,
344
+ // "access-hash-rec": access_hash,
345
+ // "file-id": String(file_id),
346
+ // "user-agent": this.userAgent,
347
+ // };
348
+ // const base_url = `https://messenger${dc_id}.iranlms.ir`;
349
+ // const fetchChunk = async (
350
+ // start_index: number,
351
+ // last_index: number
352
+ // ): Promise<Buffer> => {
353
+ // const chunk_headers = {
354
+ // ...headers,
355
+ // "start-index": String(start_index),
356
+ // "last-index": String(last_index),
357
+ // };
358
+ // try {
359
+ // const config: AxiosRequestConfig = {
360
+ // headers: chunk_headers,
361
+ // responseType: "arraybuffer",
362
+ // };
363
+ // const response = await axios.post(
364
+ // `${base_url}/GetFile.ashx`,
365
+ // {},
366
+ // config
367
+ // );
368
+ // return Buffer.from(response.data);
369
+ // } catch (e) {
370
+ // return Buffer.alloc(0);
371
+ // }
372
+ // };
373
+ // if (speed) {
374
+ // const tasks: Promise<Buffer>[] = [];
375
+ // for (let start_index = 0; start_index < size; start_index += chunk) {
376
+ // const last_index = Math.min(start_index + chunk, size) - 1;
377
+ // tasks.push(fetchChunk(start_index, last_index));
378
+ // }
379
+ // const resultChunks = await Promise.all(tasks);
380
+ // const result = Buffer.concat(resultChunks);
381
+ // if (callback) {
382
+ // await callback(size, result.length);
383
+ // }
384
+ // return result;
385
+ // } else {
386
+ // let result = Buffer.alloc(0);
387
+ // let start_index = 0;
388
+ // while (start_index < size) {
389
+ // const last_index = Math.min(start_index + chunk, size) - 1;
390
+ // const data = await fetchChunk(start_index, last_index);
391
+ // if (data.length === 0) break;
392
+ // result = Buffer.concat([result, data]);
393
+ // start_index = last_index + 1;
394
+ // if (callback) {
395
+ // await callback(size, result.length);
396
+ // }
397
+ // }
398
+ // return result;
399
+ // }
400
+ // }
401
+ /**
402
+ * Delay utility
403
+ */
404
+ delay(ms) {
405
+ return new Promise((resolve) => setTimeout(resolve, ms));
406
+ }
407
+ /**
408
+ * Resolves platform configuration based on input
409
+ */
410
+ resolvePlatform(platform) {
411
+ const isAndroid = platform?.toLowerCase() === 'android';
412
+ return {
413
+ app_name: 'Main',
414
+ app_version: isAndroid ? '3.6.4' : '4.4.9',
415
+ platform: isAndroid ? 'Android' : 'Web',
416
+ package: isAndroid ? 'app.rbmain.a' : 'web.rubika.ir',
417
+ lang_code: 'fa',
418
+ };
419
+ }
420
+ /**
421
+ * Builds HTTP headers based on platform
422
+ */
423
+ buildHeaders(platform) {
424
+ const headers = {
425
+ 'content-type': 'application/json',
426
+ connection: 'keep-alive',
427
+ 'user-agent': new user_agents_1.default().toString(),
428
+ };
429
+ if (platform.toLowerCase() !== 'android') {
430
+ headers.origin = 'https://web.rubika.ir';
431
+ headers.referer = 'https://web.rubika.ir/';
432
+ }
433
+ return headers;
434
+ }
435
+ }
436
+ exports.default = Network;
@@ -0,0 +1,47 @@
1
+ interface PlatformInfo {
2
+ app_name: string;
3
+ app_version: string;
4
+ platform: string;
5
+ package: string;
6
+ lang_code: string;
7
+ }
8
+ interface AuthInfo {
9
+ auth?: string;
10
+ decode_auth?: string;
11
+ key?: Buffer;
12
+ privateKey?: string;
13
+ }
14
+ interface SendOptions {
15
+ input?: Record<string, any>;
16
+ method?: string;
17
+ tmp_session?: boolean;
18
+ }
19
+ interface ServerResponse {
20
+ data_enc?: string;
21
+ status?: string;
22
+ status_det?: string;
23
+ data?: Record<string, any>;
24
+ }
25
+ declare class Network {
26
+ private headers;
27
+ private agent;
28
+ private apiUrl;
29
+ defaultPlatform: PlatformInfo;
30
+ userAgent: string;
31
+ constructor();
32
+ /**
33
+ * Retrieves API and WSS server URLs
34
+ */
35
+ getDcs(): Promise<boolean>;
36
+ /**
37
+ * Sends a POST request with retry logic and enhanced error reporting
38
+ */
39
+ request(url: string, data: Record<string, any>): Promise<any>;
40
+ send({ input, method, tmp_session }: SendOptions, { auth, decode_auth, key, privateKey }: AuthInfo): Promise<ServerResponse | undefined>;
41
+ bulder(name: string, input: Record<string, any>, { auth, key, decode_auth, privateKey }: AuthInfo, tmp_session?: boolean): Promise<Record<string, any> | undefined>;
42
+ /**
43
+ * Delay utility
44
+ */
45
+ delay(ms: number): Promise<void>;
46
+ }
47
+ export default Network;