rubjs 2.9.3 → 3.0.1

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