@hbmodsofc/baileys 1.5.0 → 1.7.6

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 (156) hide show
  1. package/LICENSE +1 -1
  2. package/WAProto/index.js +19671 -152026
  3. package/engine-requirements.js +4 -4
  4. package/lib/Defaults/index.d.ts +12 -8
  5. package/lib/Defaults/index.js +90 -124
  6. package/lib/Signal/Group/group_cipher.d.ts +0 -1
  7. package/lib/Signal/Group/group_cipher.js +28 -39
  8. package/lib/Signal/Group/sender-chain-key.d.ts +1 -1
  9. package/lib/Signal/Group/sender-chain-key.js +9 -2
  10. package/lib/Signal/Group/sender-key-distribution-message.js +3 -3
  11. package/lib/Signal/Group/sender-key-message.js +3 -3
  12. package/lib/Signal/Group/sender-key-state.d.ts +4 -4
  13. package/lib/Signal/Group/sender-key-state.js +47 -16
  14. package/lib/Signal/libsignal.d.ts +7 -3
  15. package/lib/Signal/libsignal.js +224 -39
  16. package/lib/Signal/lid-mapping.d.ts +26 -0
  17. package/lib/Signal/lid-mapping.js +146 -0
  18. package/lib/Socket/Client/index.d.ts +2 -3
  19. package/lib/Socket/Client/index.js +2 -3
  20. package/lib/Socket/Client/{abstract-socket-client.d.ts → types.d.ts} +1 -3
  21. package/lib/Socket/Client/{web-socket-client.d.ts → websocket.d.ts} +1 -1
  22. package/lib/Socket/Client/{web-socket-client.js → websocket.js} +10 -16
  23. package/lib/Socket/business.d.ts +94 -78
  24. package/lib/Socket/business.js +130 -11
  25. package/lib/Socket/chats.d.ts +63 -233
  26. package/lib/Socket/chats.js +234 -184
  27. package/lib/Socket/communities.d.ts +232 -0
  28. package/lib/Socket/communities.js +402 -0
  29. package/lib/Socket/groups.d.ts +62 -41
  30. package/lib/Socket/groups.js +76 -64
  31. package/lib/Socket/index.d.ts +129 -83
  32. package/lib/Socket/index.js +13 -6
  33. package/lib/Socket/messages-recv.d.ts +59 -48
  34. package/lib/Socket/messages-recv.js +516 -371
  35. package/lib/Socket/messages-send.d.ts +86 -67
  36. package/lib/Socket/messages-send.js +1091 -1
  37. package/lib/Socket/mex.d.ts +2 -0
  38. package/lib/Socket/mex.js +45 -0
  39. package/lib/Socket/newsletter.d.ts +76 -64
  40. package/lib/Socket/newsletter.js +184 -1
  41. package/lib/Socket/socket.d.ts +19 -13
  42. package/lib/Socket/socket.js +805 -1
  43. package/lib/Types/Auth.d.ts +4 -10
  44. package/lib/Types/Bussines.d.ts +24 -0
  45. package/lib/Types/Bussines.js +2 -0
  46. package/lib/Types/Call.d.ts +1 -1
  47. package/lib/Types/Chat.d.ts +29 -9
  48. package/lib/Types/Chat.js +7 -1
  49. package/lib/Types/Contact.d.ts +5 -1
  50. package/lib/Types/Events.d.ts +55 -14
  51. package/lib/Types/GroupMetadata.d.ts +15 -5
  52. package/lib/Types/Label.d.ts +11 -0
  53. package/lib/Types/Label.js +1 -1
  54. package/lib/Types/LabelAssociation.js +1 -1
  55. package/lib/Types/Message.d.ts +75 -49
  56. package/lib/Types/Message.js +10 -7
  57. package/lib/Types/Newsletter.d.ts +129 -98
  58. package/lib/Types/Newsletter.js +33 -38
  59. package/lib/Types/Product.d.ts +1 -1
  60. package/lib/Types/Signal.d.ts +29 -1
  61. package/lib/Types/Socket.d.ts +48 -22
  62. package/lib/Types/State.d.ts +13 -2
  63. package/lib/Types/State.js +12 -0
  64. package/lib/Types/USync.d.ts +1 -1
  65. package/lib/Types/index.d.ts +10 -3
  66. package/lib/Types/index.js +2 -2
  67. package/lib/Utils/auth-utils.d.ts +3 -3
  68. package/lib/Utils/auth-utils.js +378 -102
  69. package/lib/Utils/baileys-event-stream.js +1 -1
  70. package/lib/Utils/business.d.ts +2 -2
  71. package/lib/Utils/business.js +19 -13
  72. package/lib/Utils/chat-utils.d.ts +21 -22
  73. package/lib/Utils/chat-utils.js +201 -154
  74. package/lib/Utils/crypto.d.ts +18 -19
  75. package/lib/Utils/crypto.js +78 -37
  76. package/lib/Utils/decode-wa-message.d.ts +34 -7
  77. package/lib/Utils/decode-wa-message.js +138 -66
  78. package/lib/Utils/event-buffer.d.ts +6 -8
  79. package/lib/Utils/event-buffer.js +81 -43
  80. package/lib/Utils/generics.d.ts +27 -27
  81. package/lib/Utils/generics.js +128 -133
  82. package/lib/Utils/history.d.ts +9 -5
  83. package/lib/Utils/history.js +17 -23
  84. package/lib/Utils/index.d.ts +2 -0
  85. package/lib/Utils/index.js +2 -0
  86. package/lib/Utils/lidToJid-test.d.ts +11 -0
  87. package/lib/Utils/lidToJid-test.js +27 -0
  88. package/lib/Utils/link-preview.d.ts +4 -4
  89. package/lib/Utils/link-preview.js +40 -12
  90. package/lib/Utils/logger.d.ts +11 -3
  91. package/lib/Utils/lt-hash.d.ts +8 -8
  92. package/lib/Utils/lt-hash.js +23 -24
  93. package/lib/Utils/make-mutex.d.ts +2 -2
  94. package/lib/Utils/make-mutex.js +3 -2
  95. package/lib/Utils/message-retry-manager.d.ts +81 -0
  96. package/lib/Utils/message-retry-manager.js +152 -0
  97. package/lib/Utils/messages-media.d.ts +37 -41
  98. package/lib/Utils/messages-media.js +252 -368
  99. package/lib/Utils/messages.d.ts +13 -15
  100. package/lib/Utils/messages.js +274 -261
  101. package/lib/Utils/noise-handler.d.ts +13 -15
  102. package/lib/Utils/noise-handler.js +20 -26
  103. package/lib/Utils/process-message.d.ts +9 -8
  104. package/lib/Utils/process-message.js +157 -93
  105. package/lib/Utils/signal.d.ts +6 -5
  106. package/lib/Utils/signal.js +37 -29
  107. package/lib/Utils/use-multi-file-auth-state.d.ts +1 -2
  108. package/lib/Utils/use-multi-file-auth-state.js +12 -7
  109. package/lib/Utils/validate-connection.d.ts +5 -6
  110. package/lib/Utils/validate-connection.js +39 -97
  111. package/lib/WABinary/constants.d.ts +24 -27
  112. package/lib/WABinary/constants.js +1276 -13
  113. package/lib/WABinary/decode.d.ts +3 -4
  114. package/lib/WABinary/decode.js +28 -14
  115. package/lib/WABinary/encode.d.ts +1 -2
  116. package/lib/WABinary/encode.js +134 -147
  117. package/lib/WABinary/generic-utils.d.ts +4 -7
  118. package/lib/WABinary/generic-utils.js +40 -125
  119. package/lib/WABinary/jid-utils.d.ts +13 -8
  120. package/lib/WABinary/jid-utils.js +27 -16
  121. package/lib/WAM/BinaryInfo.d.ts +2 -11
  122. package/lib/WAM/constants.d.ts +3 -2
  123. package/lib/WAM/constants.js +2252 -2359
  124. package/lib/WAM/encode.d.ts +1 -2
  125. package/lib/WAM/encode.js +8 -11
  126. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +2 -2
  127. package/lib/WAUSync/Protocols/USyncContactProtocol.js +3 -4
  128. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +2 -2
  129. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +5 -5
  130. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +2 -2
  131. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +5 -5
  132. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +2 -2
  133. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +5 -6
  134. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +2 -2
  135. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +1 -1
  136. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +4 -3
  137. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +11 -3
  138. package/lib/WAUSync/USyncQuery.d.ts +2 -2
  139. package/lib/WAUSync/USyncQuery.js +19 -15
  140. package/lib/WAUSync/USyncUser.d.ts +5 -5
  141. package/lib/WAUSync/index.d.ts +1 -1
  142. package/lib/WAUSync/index.js +1 -1
  143. package/package.json +102 -102
  144. package/lib/Defaults/baileys-version.json +0 -3
  145. package/lib/Defaults/phonenumber-mcc.json +0 -223
  146. package/lib/Signal/Group/queue-job.d.ts +0 -1
  147. package/lib/Signal/Group/queue-job.js +0 -57
  148. package/lib/Socket/Client/mobile-socket-client.d.ts +0 -13
  149. package/lib/Socket/Client/mobile-socket-client.js +0 -65
  150. package/lib/Socket/hbmods.d.ts +0 -253
  151. package/lib/Socket/hbmods.js +0 -1
  152. package/lib/Socket/registration.d.ts +0 -267
  153. package/lib/Socket/registration.js +0 -166
  154. package/lib/Socket/usync.d.ts +0 -36
  155. package/lib/Socket/usync.js +0 -70
  156. /package/lib/Socket/Client/{abstract-socket-client.js → types.js} +0 -0
@@ -0,0 +1,2 @@
1
+ import type { BinaryNode } from '../WABinary';
2
+ export declare const executeWMexQuery: <T>(variables: Record<string, unknown>, queryId: string, dataPath: string, query: (node: BinaryNode) => Promise<BinaryNode>, generateMessageTag: () => string) => Promise<T>;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeWMexQuery = void 0;
4
+ const boom_1 = require("@hapi/boom");
5
+ const WABinary_1 = require("../WABinary");
6
+ const wMexQuery = (variables, queryId, query, generateMessageTag) => {
7
+ return query({
8
+ tag: 'iq',
9
+ attrs: {
10
+ id: generateMessageTag(),
11
+ type: 'get',
12
+ to: WABinary_1.S_WHATSAPP_NET,
13
+ xmlns: 'w:mex'
14
+ },
15
+ content: [
16
+ {
17
+ tag: 'query',
18
+ attrs: { query_id: queryId },
19
+ content: Buffer.from(JSON.stringify({ variables }), 'utf-8')
20
+ }
21
+ ]
22
+ });
23
+ };
24
+ const executeWMexQuery = async (variables, queryId, dataPath, query, generateMessageTag) => {
25
+ const result = await wMexQuery(variables, queryId, query, generateMessageTag);
26
+ const child = (0, WABinary_1.getBinaryNodeChild)(result, 'result');
27
+ if (child?.content) {
28
+ const data = JSON.parse(child.content.toString());
29
+ if (data.errors && data.errors.length > 0) {
30
+ const errorMessages = data.errors.map((err) => err.message || 'Unknown error').join(', ');
31
+ const firstError = data.errors[0];
32
+ const errorCode = firstError.extensions?.error_code || 400;
33
+ throw new boom_1.Boom(`GraphQL server error: ${errorMessages}`, { statusCode: errorCode, data: firstError });
34
+ }
35
+ const response = dataPath ? data?.data?.[dataPath] : data?.data;
36
+ if (typeof response !== 'undefined') {
37
+ return response;
38
+ }
39
+ }
40
+ const action = (dataPath || '').startsWith('xwa2_')
41
+ ? dataPath.substring(5).replace(/_/g, ' ')
42
+ : dataPath?.replace(/_/g, ' ');
43
+ throw new boom_1.Boom(`Failed to ${action}, unexpected response structure.`, { statusCode: 400, data: result });
44
+ };
45
+ exports.executeWMexQuery = executeWMexQuery;
@@ -1,32 +1,29 @@
1
- /// <reference types="node" />
2
- import { NewsletterFetchedUpdate, NewsletterMetadata, NewsletterReactionMode, NewsletterViewRole, SocketConfig, WAMediaUpload } from '../Types';
3
- import { BinaryNode } from '../WABinary';
1
+ import type { SocketConfig, WAMediaUpload } from '../Types';
2
+ import type { NewsletterMetadata, NewsletterUpdate } from '../Types';
4
3
  export declare const makeNewsletterSocket: (config: SocketConfig) => {
4
+ newsletterCreate: (name: string, description?: string) => Promise<NewsletterMetadata>;
5
+ newsletterUpdate: (jid: string, updates: NewsletterUpdate) => Promise<unknown>;
6
+ newsletterSubscribers: (jid: string) => Promise<{
7
+ subscribers: number;
8
+ }>;
9
+ newsletterMetadata: (type: "invite" | "jid", key: string) => Promise<NewsletterMetadata | null>;
10
+ newsletterFollow: (jid: string) => Promise<unknown>;
11
+ newsletterUnfollow: (jid: string) => Promise<unknown>;
12
+ newsletterMute: (jid: string) => Promise<unknown>;
13
+ newsletterUnmute: (jid: string) => Promise<unknown>;
14
+ newsletterUpdateName: (jid: string, name: string) => Promise<unknown>;
15
+ newsletterUpdateDescription: (jid: string, description: string) => Promise<unknown>;
16
+ newsletterUpdatePicture: (jid: string, content: WAMediaUpload) => Promise<unknown>;
17
+ newsletterRemovePicture: (jid: string) => Promise<unknown>;
18
+ newsletterReactMessage: (jid: string, serverId: string, reaction?: string) => Promise<void>;
19
+ newsletterFetchMessages: (jid: string, count: number, since: number, after: number) => Promise<any>;
5
20
  subscribeNewsletterUpdates: (jid: string) => Promise<{
6
21
  duration: string;
7
- }>;
8
- newsletterReactionMode: (jid: string, mode: NewsletterReactionMode) => Promise<void>;
9
- newsletterUpdateDescription: (jid: string, description?: string) => Promise<void>;
10
- newsletterUpdateName: (jid: string, name: string) => Promise<void>;
11
- newsletterUpdatePicture: (jid: string, content: WAMediaUpload) => Promise<void>;
12
- newsletterRemovePicture: (jid: string) => Promise<void>;
13
- newsletterUnfollow: (jid: string) => Promise<void>;
14
- newsletterFollow: (jid: string) => Promise<void>;
15
- newsletterUnmute: (jid: string) => Promise<void>;
16
- newsletterMute: (jid: string) => Promise<void>;
17
- newsletterAction: (jid: string, type: 'follow' | 'unfollow' | 'mute' | 'unmute') => Promise<void>;
18
- newsletterCreate: (name: string, description: string, reaction_codes: string) => Promise<NewsletterMetadata>;
19
- newsletterMetadata: (type: 'invite' | 'jid', key: string, role?: NewsletterViewRole) => Promise<NewsletterMetadata>;
22
+ } | null>;
20
23
  newsletterAdminCount: (jid: string) => Promise<number>;
21
- /**user is Lid, not Jid */
22
- newsletterChangeOwner: (jid: string, user: string) => Promise<void>;
23
- /**user is Lid, not Jid */
24
- newsletterDemote: (jid: string, user: string) => Promise<void>;
24
+ newsletterChangeOwner: (jid: string, newOwnerJid: string) => Promise<void>;
25
+ newsletterDemote: (jid: string, userJid: string) => Promise<void>;
25
26
  newsletterDelete: (jid: string) => Promise<void>;
26
- /**if code wasn't passed, the reaction will be removed (if is reacted) */
27
- newsletterReactMessage: (jid: string, serverId: string, code?: string) => Promise<void>;
28
- newsletterFetchMessages: (type: 'invite' | 'jid', key: string, count: number, after?: number) => Promise<NewsletterFetchedUpdate[]>;
29
- newsletterFetchUpdates: (jid: string, count: number, after?: number, since?: number) => Promise<NewsletterFetchedUpdate[]>;
30
27
  groupMetadata: (jid: string) => Promise<import("../Types").GroupMetadata>;
31
28
  groupCreate: (subject: string, participants: string[]) => Promise<import("../Types").GroupMetadata>;
32
29
  groupLeave: (id: string) => Promise<void>;
@@ -34,101 +31,116 @@ export declare const makeNewsletterSocket: (config: SocketConfig) => {
34
31
  groupRequestParticipantsList: (jid: string) => Promise<{
35
32
  [key: string]: string;
36
33
  }[]>;
37
- groupRequestParticipantsUpdate: (jid: string, participants: string[], action: "reject" | "approve") => Promise<{
34
+ groupRequestParticipantsUpdate: (jid: string, participants: string[], action: "approve" | "reject") => Promise<{
38
35
  status: string;
39
36
  jid: string;
40
37
  }[]>;
41
38
  groupParticipantsUpdate: (jid: string, participants: string[], action: import("../Types").ParticipantAction) => Promise<{
42
39
  status: string;
43
40
  jid: string;
44
- content: BinaryNode;
41
+ content: import("../WABinary").BinaryNode;
45
42
  }[]>;
46
- groupUpdateDescription: (jid: string, description?: string | undefined) => Promise<void>;
43
+ groupUpdateDescription: (jid: string, description?: string) => Promise<void>;
47
44
  groupInviteCode: (jid: string) => Promise<string | undefined>;
48
45
  groupRevokeInvite: (jid: string) => Promise<string | undefined>;
49
46
  groupAcceptInvite: (code: string) => Promise<string | undefined>;
50
- groupAcceptInviteV4: (key: string | import("../Types").WAProto.IMessageKey, inviteMessage: import("../Types").WAProto.Message.IGroupInviteMessage) => Promise<string>;
47
+ groupRevokeInviteV4: (groupJid: string, invitedJid: string) => Promise<boolean>;
48
+ groupAcceptInviteV4: (key: string | import("../Types").WAMessageKey, inviteMessage: import("../Types").WAProto.Message.IGroupInviteMessage) => Promise<any>;
51
49
  groupGetInviteInfo: (code: string) => Promise<import("../Types").GroupMetadata>;
52
50
  groupToggleEphemeral: (jid: string, ephemeralExpiration: number) => Promise<void>;
53
- groupSettingUpdate: (jid: string, setting: "announcement" | "locked" | "not_announcement" | "unlocked") => Promise<void>;
54
- groupMemberAddMode: (jid: string, mode: "all_member_add" | "admin_add") => Promise<void>;
51
+ groupSettingUpdate: (jid: string, setting: "announcement" | "not_announcement" | "locked" | "unlocked") => Promise<void>;
52
+ groupMemberAddMode: (jid: string, mode: "admin_add" | "all_member_add") => Promise<void>;
55
53
  groupJoinApprovalMode: (jid: string, mode: "on" | "off") => Promise<void>;
56
54
  groupFetchAllParticipating: () => Promise<{
57
55
  [_: string]: import("../Types").GroupMetadata;
58
56
  }>;
57
+ createCallLink: (type: "audio" | "video", event?: {
58
+ startTime: number;
59
+ }, timeoutMs?: number) => Promise<string | undefined>;
60
+ getBotListV2: () => Promise<import("../Types").BotListInfo[]>;
59
61
  processingMutex: {
60
- mutex<T>(code: () => T | Promise<T>): Promise<T>;
62
+ mutex<T>(code: () => Promise<T> | T): Promise<T>;
61
63
  };
62
64
  fetchPrivacySettings: (force?: boolean) => Promise<{
63
65
  [_: string]: string;
64
66
  }>;
65
- upsertMessage: (msg: import("../Types").WAProto.IWebMessageInfo, type: import("../Types").MessageUpsertType) => Promise<void>;
67
+ upsertMessage: (msg: import("../Types").WAMessage, type: import("../Types").MessageUpsertType) => Promise<void>;
66
68
  appPatch: (patchCreate: import("../Types").WAPatchCreate) => Promise<void>;
67
- sendPresenceUpdate: (type: import("../Types").WAPresence, toJid?: string | undefined) => Promise<void>;
68
- presenceSubscribe: (toJid: string, tcToken?: Buffer | undefined) => Promise<void>;
69
- profilePictureUrl: (jid: string, type?: "image" | "preview", timeoutMs?: number | undefined) => Promise<string | undefined>;
70
- onWhatsApp: (...jids: string[]) => Promise<{
71
- jid: string;
72
- exists: unknown;
73
- lid: unknown;
74
- }[] | undefined>;
69
+ sendPresenceUpdate: (type: import("../Types").WAPresence, toJid?: string) => Promise<void>;
70
+ presenceSubscribe: (toJid: string, tcToken?: Buffer) => Promise<void>;
71
+ profilePictureUrl: (jid: string, type?: "preview" | "image", timeoutMs?: number) => Promise<string | undefined>;
75
72
  fetchBlocklist: () => Promise<string[]>;
76
- fetchStatus: (jid: string) => Promise<{
77
- status: string | undefined;
78
- setAt: Date;
79
- } | undefined>;
80
- updateProfilePicture: (jid: string, content: WAMediaUpload) => Promise<void>;
73
+ fetchStatus: (...jids: string[]) => Promise<import("..").USyncQueryResultList[] | undefined>;
74
+ fetchDisappearingDuration: (...jids: string[]) => Promise<import("..").USyncQueryResultList[] | undefined>;
75
+ updateProfilePicture: (jid: string, content: WAMediaUpload, dimensions?: {
76
+ width: number;
77
+ height: number;
78
+ }) => Promise<void>;
81
79
  removeProfilePicture: (jid: string) => Promise<void>;
82
80
  updateProfileStatus: (status: string) => Promise<void>;
83
81
  updateProfileName: (name: string) => Promise<void>;
84
82
  updateBlockStatus: (jid: string, action: "block" | "unblock") => Promise<void>;
83
+ updateDisableLinkPreviewsPrivacy: (isPreviewsDisabled: boolean) => Promise<void>;
84
+ updateCallPrivacy: (value: import("../Types").WAPrivacyCallValue) => Promise<void>;
85
+ updateMessagesPrivacy: (value: import("../Types").WAPrivacyMessagesValue) => Promise<void>;
85
86
  updateLastSeenPrivacy: (value: import("../Types").WAPrivacyValue) => Promise<void>;
86
87
  updateOnlinePrivacy: (value: import("../Types").WAPrivacyOnlineValue) => Promise<void>;
87
88
  updateProfilePicturePrivacy: (value: import("../Types").WAPrivacyValue) => Promise<void>;
88
89
  updateStatusPrivacy: (value: import("../Types").WAPrivacyValue) => Promise<void>;
89
90
  updateReadReceiptsPrivacy: (value: import("../Types").WAReadReceiptsValue) => Promise<void>;
90
- updateGroupsAddPrivacy: (value: import("../Types").WAPrivacyValue) => Promise<void>;
91
+ updateGroupsAddPrivacy: (value: import("../Types").WAPrivacyGroupAddValue) => Promise<void>;
91
92
  updateDefaultDisappearingMode: (duration: number) => Promise<void>;
92
- getBusinessProfile: (jid: string) => Promise<void | import("../Types").WABusinessProfile>;
93
- resyncAppState: (collections: readonly ("critical_block" | "critical_unblock_low" | "regular_high" | "regular_low" | "regular")[], isInitialSync: boolean) => Promise<void>;
93
+ getBusinessProfile: (jid: string) => Promise<import("../Types").WABusinessProfile | void>;
94
+ resyncAppState: (collections: readonly ("critical_unblock_low" | "regular_high" | "regular_low" | "critical_block" | "regular")[], isInitialSync: boolean) => Promise<void>;
94
95
  chatModify: (mod: import("../Types").ChatModification, jid: string) => Promise<void>;
95
- cleanDirtyBits: (type: "account_sync" | "groups", fromTimestamp?: string | number | undefined) => Promise<void>;
96
+ cleanDirtyBits: (type: "account_sync" | "groups", fromTimestamp?: number | string) => Promise<void>;
97
+ addOrEditContact: (jid: string, contact: import("../Types").WAProto.SyncActionValue.IContactAction) => Promise<void>;
98
+ removeContact: (jid: string) => Promise<void>;
99
+ addLabel: (jid: string, labels: import("../Types/Label").LabelActionBody) => Promise<void>;
96
100
  addChatLabel: (jid: string, labelId: string) => Promise<void>;
97
101
  removeChatLabel: (jid: string, labelId: string) => Promise<void>;
98
102
  addMessageLabel: (jid: string, messageId: string, labelId: string) => Promise<void>;
99
103
  removeMessageLabel: (jid: string, messageId: string, labelId: string) => Promise<void>;
100
104
  star: (jid: string, messages: {
101
105
  id: string;
102
- fromMe?: boolean | undefined;
106
+ fromMe?: boolean;
103
107
  }[], star: boolean) => Promise<void>;
108
+ addOrEditQuickReply: (quickReply: import("../Types/Bussines").QuickReplyAction) => Promise<void>;
109
+ removeQuickReply: (timestamp: string) => Promise<void>;
104
110
  type: "md";
105
- ws: any;
111
+ ws: import("./Client").WebSocketClient;
106
112
  ev: import("../Types").BaileysEventEmitter & {
107
113
  process(handler: (events: Partial<import("../Types").BaileysEventMap>) => void | Promise<void>): () => void;
108
114
  buffer(): void;
109
- createBufferedFunction<A extends any[], T_1>(work: (...args: A) => Promise<T_1>): (...args: A) => Promise<T_1>;
110
- flush(force?: boolean | undefined): boolean;
115
+ createBufferedFunction<A extends any[], T>(work: (...args: A) => Promise<T>): (...args: A) => Promise<T>;
116
+ flush(): boolean;
111
117
  isBuffering(): boolean;
112
118
  };
113
119
  authState: {
114
120
  creds: import("../Types").AuthenticationCreds;
115
121
  keys: import("../Types").SignalKeyStoreWithTransaction;
116
122
  };
117
- signalRepository: import("../Types").SignalRepository;
123
+ signalRepository: import("../Types").SignalRepositoryWithLIDStore;
118
124
  user: import("../Types").Contact | undefined;
119
125
  generateMessageTag: () => string;
120
- query: (node: BinaryNode, timeoutMs?: number | undefined) => Promise<BinaryNode>;
121
- waitForMessage: <T_2>(msgId: string, timeoutMs?: number | undefined) => Promise<T_2>;
126
+ query: (node: import("../WABinary").BinaryNode, timeoutMs?: number) => Promise<any>;
127
+ waitForMessage: <T>(msgId: string, timeoutMs?: number | undefined) => Promise<T | undefined>;
122
128
  waitForSocketOpen: () => Promise<void>;
123
129
  sendRawMessage: (data: Uint8Array | Buffer) => Promise<void>;
124
- sendNode: (frame: BinaryNode) => Promise<void>;
125
- logout: (msg?: string | undefined) => Promise<void>;
130
+ sendNode: (frame: import("../WABinary").BinaryNode) => Promise<void>;
131
+ logout: (msg?: string) => Promise<void>;
126
132
  end: (error: Error | undefined) => void;
127
- onUnexpectedError: (err: Error | import("@hapi/boom").Boom<any>, msg: string) => void;
128
- uploadPreKeys: (count?: number) => Promise<void>;
133
+ onUnexpectedError: (err: Error | import("@hapi/boom").Boom, msg: string) => void;
134
+ uploadPreKeys: (count?: number, retryCount?: number) => Promise<void>;
129
135
  uploadPreKeysToServerIfRequired: () => Promise<void>;
130
- requestPairingCode: (phoneNumber: string) => Promise<string>;
131
- waitForConnectionUpdate: (check: (u: Partial<import("../Types").ConnectionState>) => boolean | undefined, timeoutMs?: number | undefined) => Promise<void>;
132
- sendWAMBuffer: (wamBuffer: Buffer) => Promise<BinaryNode>;
136
+ requestPairingCode: (phoneNumber: string, customPairingCode?: string) => Promise<string>;
137
+ waitForConnectionUpdate: (check: (u: Partial<import("../Types").ConnectionState>) => Promise<boolean | undefined>, timeoutMs?: number) => Promise<void>;
138
+ sendWAMBuffer: (wamBuffer: Buffer) => Promise<any>;
139
+ executeUSyncQuery: (usyncQuery: import("..").USyncQuery) => Promise<import("..").USyncQueryResult | undefined>;
140
+ onWhatsApp: (...jids: string[]) => Promise<{
141
+ jid: string;
142
+ exists: boolean;
143
+ lid: string;
144
+ }[] | undefined>;
133
145
  };
134
- export declare const extractNewsletterMetadata: (node: BinaryNode, isCreate?: boolean) => NewsletterMetadata;
146
+ export type NewsletterSocket = ReturnType<typeof makeNewsletterSocket>;
@@ -1 +1,184 @@
1
- 'use strict';const _0x3eaa48=_0x4cf5;(function(_0x135552,_0x1c27f2){const _0x583ff2=_0x4cf5,_0x1ea22a=_0x135552();while(!![]){try{const _0x2293f4=parseInt(_0x583ff2(0x25e))/(0x2666+0x241*0x5+-0x847*0x6)+parseInt(_0x583ff2(0x1f9))/(-0x2530+-0x1350+0x3882)+parseInt(_0x583ff2(0x1f4))/(-0x1*-0x1fd2+0x23e7+-0x6b*0xa2)*(parseInt(_0x583ff2(0x2a2))/(-0x173e+0x1241*0x2+-0xd40))+-parseInt(_0x583ff2(0x21d))/(0x1*0x1dcb+-0x1958+0x7e*-0x9)+-parseInt(_0x583ff2(0x222))/(-0x4*0x1a+0x5*-0x4b7+0x1801)*(-parseInt(_0x583ff2(0x237))/(0x26cb*0x1+0x2048+-0x11c3*0x4))+parseInt(_0x583ff2(0x1d1))/(0x1*-0x25f2+-0x1e8a+0x2*0x2242)+-parseInt(_0x583ff2(0x212))/(0xec0+-0x265e+-0x361*-0x7)*(parseInt(_0x583ff2(0x26e))/(-0x6*-0x5b6+0x2612+-0xa54*0x7));if(_0x2293f4===_0x1c27f2)break;else _0x1ea22a['push'](_0x1ea22a['shift']());}catch(_0x52162d){_0x1ea22a['push'](_0x1ea22a['shift']());}}}(_0x4536,0x420ba+-0x1*0x24c03+-0x944*-0x10));Object[_0x3eaa48(0x200)+_0x3eaa48(0x259)](exports,_0x3eaa48(0x1c9),{'value':!![]}),exports[_0x3eaa48(0x1e2)+_0x3eaa48(0x233)+_0x3eaa48(0x268)]=exports[_0x3eaa48(0x20d)+_0x3eaa48(0x209)]=void(-0x5*0x2b+0x11e0+-0x1*0x1109);const Types_1=require(_0x3eaa48(0x261)),Utils_1=require(_0x3eaa48(0x1d3)),WABinary_1=require(_0x3eaa48(0x256)+'y'),groups_1=require(_0x3eaa48(0x275));var QueryIds;(function(_0x2a17ef){const _0x31fde4=_0x3eaa48,_0x20776d={'Fcpgu':_0x31fde4(0x28c)+_0x31fde4(0x1cb)+'|5','GcMJv':_0x31fde4(0x26b),'MGqfk':_0x31fde4(0x1df)+_0x31fde4(0x25d),'qMnbH':_0x31fde4(0x270),'UCszm':_0x31fde4(0x253)+_0x31fde4(0x22b),'ppFiP':_0x31fde4(0x1e6),'jcVIn':_0x31fde4(0x234)+_0x31fde4(0x1ec),'Ewtjg':_0x31fde4(0x236),'OCKNd':_0x31fde4(0x269)+_0x31fde4(0x1e5),'MegZx':_0x31fde4(0x288)+'ER','OTRsj':_0x31fde4(0x28d)+_0x31fde4(0x247),'LZEbd':_0x31fde4(0x22e),'pNbcX':_0x31fde4(0x292)+_0x31fde4(0x27f),'LlToJ':_0x31fde4(0x252),'NCIEP':_0x31fde4(0x1ca)+_0x31fde4(0x214),'XCfct':_0x31fde4(0x21f),'MvLzc':_0x31fde4(0x1db)+_0x31fde4(0x23c),'pRwUC':_0x31fde4(0x277)+'T','ZSzqq':_0x31fde4(0x1cc)+_0x31fde4(0x235),'rtVaK':_0x31fde4(0x294)+'ON','DkHXp':_0x31fde4(0x21a)+_0x31fde4(0x213),'NpiXd':_0x31fde4(0x25f),'YqmLx':_0x31fde4(0x280)+_0x31fde4(0x27c)},_0x5b0977=_0x20776d[_0x31fde4(0x28a)][_0x31fde4(0x296)]('|');let _0x2411aa=0x805*0x1+0x1*-0x1543+0xa*0x153;while(!![]){switch(_0x5b0977[_0x2411aa++]){case'0':_0x2a17ef[_0x20776d[_0x31fde4(0x273)]]=_0x20776d[_0x31fde4(0x1e9)];continue;case'1':_0x2a17ef[_0x20776d[_0x31fde4(0x276)]]=_0x20776d[_0x31fde4(0x24f)];continue;case'2':_0x2a17ef[_0x20776d[_0x31fde4(0x239)]]=_0x20776d[_0x31fde4(0x1fb)];continue;case'3':_0x2a17ef[_0x20776d[_0x31fde4(0x22f)]]=_0x20776d[_0x31fde4(0x24d)];continue;case'4':_0x2a17ef[_0x20776d[_0x31fde4(0x1ee)]]=_0x20776d[_0x31fde4(0x1dd)];continue;case'5':_0x2a17ef[_0x20776d[_0x31fde4(0x220)]]=_0x20776d[_0x31fde4(0x1f0)];continue;case'6':_0x2a17ef[_0x20776d[_0x31fde4(0x1da)]]=_0x20776d[_0x31fde4(0x289)];continue;case'7':_0x2a17ef[_0x20776d[_0x31fde4(0x258)]]=_0x20776d[_0x31fde4(0x25c)];continue;case'8':_0x2a17ef[_0x20776d[_0x31fde4(0x251)]]=_0x20776d[_0x31fde4(0x227)];continue;case'9':_0x2a17ef[_0x20776d[_0x31fde4(0x26a)]]=_0x20776d[_0x31fde4(0x284)];continue;case'10':_0x2a17ef[_0x20776d[_0x31fde4(0x1fd)]]=_0x20776d[_0x31fde4(0x271)];continue;}break;}}(QueryIds||(QueryIds={})));const makeNewsletterSocket=_0x22d798=>{const _0x201967=_0x3eaa48,_0x3be955={'WrMQO':function(_0x427b50,_0x285da1){return _0x427b50===_0x285da1;},'ofNAI':function(_0x1b4905,_0x1fdd0e){return _0x1b4905===_0x1fdd0e;},'GQFyB':function(_0x414f58,_0x4b848e){return _0x414f58(_0x4b848e);},'awkjk':_0x201967(0x285)+'t','HsTsA':function(_0x7a0b69,_0x8c683a){return _0x7a0b69===_0x8c683a;},'JRViq':function(_0x2c3b4d,_0x36b071){return _0x2c3b4d===_0x36b071;},'quPoe':_0x201967(0x1e0),'lyCfl':_0x201967(0x1fc),'Fmpan':function(_0x5e0ce0,_0x145cac){return _0x5e0ce0===_0x145cac;},'wYnke':_0x201967(0x24e),'UGtXG':function(_0x25d307){return _0x25d307();},'OLmht':_0x201967(0x211)+_0x201967(0x232),'Okpaq':function(_0x2c2a37,_0x220b47,_0x4b4877,_0x40fe0c){return _0x2c2a37(_0x220b47,_0x4b4877,_0x40fe0c);},'JDZUc':_0x201967(0x20e),'sICat':_0x201967(0x207)+'es','IoKqp':function(_0xfb5091,_0x3e6093,_0x27ba8c,_0x3d4486){return _0xfb5091(_0x3e6093,_0x27ba8c,_0x3d4486);},'AqQzW':function(_0x23be0f,_0x2c66d0,_0x1c1643,_0x227474){return _0x23be0f(_0x2c66d0,_0x1c1643,_0x227474);},'bBQIU':function(_0x3b18f8,_0x5d3ace){return _0x3b18f8||_0x5d3ace;},'FvSfG':function(_0x28813e,_0x193548,_0x430e97,_0x4f6416){return _0x28813e(_0x193548,_0x430e97,_0x4f6416);},'lzAco':_0x201967(0x295),'BnjLc':function(_0x4c3e3d,_0x2da102,_0x6f80d9,_0x57b756){return _0x4c3e3d(_0x2da102,_0x6f80d9,_0x57b756);},'NlTdH':function(_0x593b53,_0x52a9fd,_0x25fc25){return _0x593b53(_0x52a9fd,_0x25fc25);},'sTXhJ':function(_0x15468c,_0x32c25f,_0x1914f0){return _0x15468c(_0x32c25f,_0x1914f0);},'lnsnQ':function(_0x10d3d6,_0x4973bd,_0x515ed0){return _0x10d3d6(_0x4973bd,_0x515ed0);},'uwQvL':function(_0x2d4562,_0xe8c5e9){return _0x2d4562(_0xe8c5e9);},'FjOCS':_0x201967(0x1d2),'ZQUcC':function(_0x4439e3){return _0x4439e3();},'pNmSx':_0x201967(0x210),'omtIj':_0x201967(0x1f7),'IgEue':function(_0x276072,_0x28c4ef,_0x451561,_0xbae1fc){return _0x276072(_0x28c4ef,_0x451561,_0xbae1fc);},'NKqwH':function(_0x5628f6,_0x122184){return _0x5628f6!==_0x122184;},'vaCxG':function(_0x182a8f,_0x509be1,_0x2f1d68,_0x51f003){return _0x182a8f(_0x509be1,_0x2f1d68,_0x51f003);},'XnAWg':function(_0x50a8f0,_0x2118a7){return _0x50a8f0||_0x2118a7;},'GzarE':_0x201967(0x223),'QfByG':function(_0x58ac80,_0x13780d,_0x578eb4){return _0x58ac80(_0x13780d,_0x578eb4);},'Knzwc':function(_0x387b74,_0xb006c3){return _0x387b74===_0xb006c3;},'dPUhb':_0x201967(0x262),'IoHAK':function(_0x44b3e5,_0x123fe0,_0x139b75,_0x23e951){return _0x44b3e5(_0x123fe0,_0x139b75,_0x23e951);},'eyHaH':function(_0x1e3054,_0x31ea33,_0x336b57,_0x56b95d){return _0x1e3054(_0x31ea33,_0x336b57,_0x56b95d);},'qypEg':function(_0x31e58c,_0x1fb032){return _0x31e58c(_0x1fb032);},'SdOCP':_0x201967(0x22c),'tDiGw':function(_0x440e1f,_0x2a6bb4,_0x34a352,_0x184414){return _0x440e1f(_0x2a6bb4,_0x34a352,_0x184414);},'MsGHs':_0x201967(0x248),'sesuh':function(_0x1f3aec,_0x2e5e57){return _0x1f3aec===_0x2e5e57;},'eVTVy':_0x201967(0x25a),'rwoOl':_0x201967(0x1e8),'QcLRL':function(_0x1e7387,_0x15f2a4,_0x4f1fb8){return _0x1e7387(_0x15f2a4,_0x4f1fb8);},'GMUyG':function(_0x590cad,_0x1cacc9,_0x2b789d,_0x40ff8d){return _0x590cad(_0x1cacc9,_0x2b789d,_0x40ff8d);},'miqvH':function(_0x55de67,_0x475034){return _0x55de67===_0x475034;},'JQbQD':function(_0x3064b5,_0x4fb38d){return _0x3064b5===_0x4fb38d;},'MPcYo':function(_0x59163a,_0xe5b66a){return _0x59163a===_0xe5b66a;},'uzBES':function(_0x165661,_0x37a932,_0x409eb5){return _0x165661(_0x37a932,_0x409eb5);},'DMEpz':_0x201967(0x1f8)},_0x11e348=(0x49b*0x1+0x1*-0x249f+0x2004,groups_1[_0x201967(0x23f)+_0x201967(0x1ed)])(_0x22d798),{authState:_0x1cd3a8,signalRepository:_0x1fd978,query:_0x22b447,generateMessageTag:_0x26d6df}=_0x11e348,_0x48847b=new TextEncoder(),_0x3cd031=async(_0x1ce61c,_0x1dd88b,_0x2e17a9)=>_0x22b447({'tag':'iq','attrs':{'id':_0x26d6df(),'type':_0x1dd88b,'xmlns':_0x201967(0x297),'to':_0x1ce61c},'content':_0x2e17a9}),_0x29616f=async(_0x133870,_0x1278d0,_0x50d4e3)=>_0x22b447({'tag':'iq','attrs':{'id':_0x26d6df(),'type':_0x201967(0x248),'xmlns':_0x201967(0x1f2),'to':WABinary_1[_0x201967(0x27e)+_0x201967(0x205)]},'content':[{'tag':_0x201967(0x29b),'attrs':{'query_id':_0x1278d0},'content':_0x48847b[_0x201967(0x1cd)](JSON[_0x201967(0x28e)]({'variables':{'newsletter_id':_0x133870,..._0x50d4e3}}))}]}),_0x2c292d=async(_0x13675b,_0x4ddb98)=>{const _0x11eb72=_0x201967;let _0x1e038a;if(_0x3be955[_0x11eb72(0x1d5)](_0x4ddb98,_0x3be955[_0x11eb72(0x208)]))_0x1e038a=(0x1d*-0x119+-0x1753+0x3728,WABinary_1[_0x11eb72(0x225)+_0x11eb72(0x24b)])(_0x13675b,_0x3be955[_0x11eb72(0x208)]);else{const _0x2642e2=(0x4bc+0xbba*0x1+-0x1076,WABinary_1[_0x11eb72(0x225)+_0x11eb72(0x24b)])(_0x13675b,_0x3be955[_0x11eb72(0x272)]);_0x1e038a=(-0x3*0xb61+0x9e7+0x183c,WABinary_1[_0x11eb72(0x225)+_0x11eb72(0x24b)])(_0x2642e2,_0x3be955[_0x11eb72(0x208)]);}return await Promise[_0x11eb72(0x1e7)]((0x13*0x1ab+-0x1fa+-0x1*0x1db7,WABinary_1[_0x11eb72(0x240)+_0x11eb72(0x238)+_0x11eb72(0x218)])(_0x1e038a)[_0x11eb72(0x245)](async _0x559646=>{const _0x4d3e4e=_0x11eb72;var _0x54db80,_0x5a12e6;_0x559646[_0x4d3e4e(0x282)][_0x4d3e4e(0x246)]=_0x3be955[_0x4d3e4e(0x231)](_0x1e038a,null)||_0x3be955[_0x4d3e4e(0x1f6)](_0x1e038a,void(-0x414+-0x1*-0x1bdc+0x2*-0xbe4))?void(-0xf08+0x349*0x1+0xbbf):_0x1e038a[_0x4d3e4e(0x282)][_0x4d3e4e(0x293)];const _0x3737fa=_0x3be955[_0x4d3e4e(0x215)](parseInt,(_0x3be955[_0x4d3e4e(0x231)](_0x5a12e6=_0x3be955[_0x4d3e4e(0x231)](_0x54db80=(0x1bb8+0x107*0x3+-0x1ecd,WABinary_1[_0x4d3e4e(0x225)+_0x4d3e4e(0x24b)])(_0x559646,_0x3be955[_0x4d3e4e(0x298)]),null)||_0x3be955[_0x4d3e4e(0x1d5)](_0x54db80,void(-0x1d0c+0x1*-0x179e+0x1*0x34aa))?void(-0x2*0x128d+0x2101+0x419):_0x54db80[_0x4d3e4e(0x282)],null)||_0x3be955[_0x4d3e4e(0x221)](_0x5a12e6,void(-0xcb*0xb+-0x18b3+0x216c))?void(-0x1*0x1ee+-0x4f*0x21+0xc1d):_0x5a12e6[_0x4d3e4e(0x228)])||'0'),_0x6c612a=(0x2c4*0xa+-0x1b46+-0x7*0xe,WABinary_1[_0x4d3e4e(0x225)+_0x4d3e4e(0x24b)])(_0x559646,_0x3be955[_0x4d3e4e(0x229)]),_0x29d1c8=(0x39*0x49+0x144e+-0x248f,WABinary_1[_0x4d3e4e(0x225)+_0x4d3e4e(0x290)+'n'])(_0x6c612a,_0x3be955[_0x4d3e4e(0x29f)])[_0x4d3e4e(0x245)](({attrs:_0x470129})=>({'count':+_0x470129[_0x4d3e4e(0x228)],'code':_0x470129[_0x4d3e4e(0x1d7)]})),_0x47a519={'server_id':_0x559646[_0x4d3e4e(0x282)][_0x4d3e4e(0x1d4)],'views':_0x3737fa,'reactions':_0x29d1c8};if(_0x3be955[_0x4d3e4e(0x283)](_0x4ddb98,_0x3be955[_0x4d3e4e(0x208)])){const {fullMessage:_0x39af4a,decrypt:_0x12f941}=await(0x1cb2+0x11e+-0x1dd0,Utils_1[_0x4d3e4e(0x26f)+_0x4d3e4e(0x20b)])(_0x559646,_0x1cd3a8[_0x4d3e4e(0x2a1)]['me']['id'],_0x1cd3a8[_0x4d3e4e(0x2a1)]['me'][_0x4d3e4e(0x265)]||'',_0x1fd978,_0x22d798[_0x4d3e4e(0x257)]);await _0x3be955[_0x4d3e4e(0x2a5)](_0x12f941),_0x47a519[_0x4d3e4e(0x22c)]=_0x39af4a;}return _0x47a519;}));};return{..._0x11e348,'subscribeNewsletterUpdates':async _0x30bbf8=>{const _0x3ec1ca=_0x201967;var _0x423a7b;const _0x36a3d6=await _0x3be955[_0x3ec1ca(0x22a)](_0x3cd031,_0x30bbf8,_0x3be955[_0x3ec1ca(0x224)],[{'tag':_0x3be955[_0x3ec1ca(0x204)],'attrs':{},'content':[]}]);return _0x3be955[_0x3ec1ca(0x221)](_0x423a7b=(-0x1720+0x2b*-0x8f+-0x2f25*-0x1,WABinary_1[_0x3ec1ca(0x225)+_0x3ec1ca(0x24b)])(_0x36a3d6,_0x3be955[_0x3ec1ca(0x204)]),null)||_0x3be955[_0x3ec1ca(0x1f6)](_0x423a7b,void(0x9*-0x1d+0x526+0x1*-0x421))?void(-0x1bfe+0x17*-0x185+-0x14fb*-0x3):_0x423a7b[_0x3ec1ca(0x282)];},'newsletterReactionMode':async(_0x2080fc,_0x478e67)=>{const _0x2f90a3=_0x201967;await _0x3be955[_0x2f90a3(0x250)](_0x29616f,_0x2080fc,QueryIds[_0x2f90a3(0x294)+'ON'],{'updates':{'settings':{'reaction_codes':{'value':_0x478e67}}}});},'newsletterUpdateDescription':async(_0xc4325d,_0x2ae702)=>{const _0x52bb7e=_0x201967;await _0x3be955[_0x52bb7e(0x20f)](_0x29616f,_0xc4325d,QueryIds[_0x52bb7e(0x294)+'ON'],{'updates':{'description':_0x3be955[_0x52bb7e(0x1ff)](_0x2ae702,''),'settings':null}});},'newsletterUpdateName':async(_0x4a5291,_0x5e4585)=>{const _0x129fb2=_0x201967;await _0x3be955[_0x129fb2(0x226)](_0x29616f,_0x4a5291,QueryIds[_0x129fb2(0x294)+'ON'],{'updates':{'name':_0x5e4585,'settings':null}});},'newsletterUpdatePicture':async(_0xa833e8,_0x1060a8)=>{const _0x431376=_0x201967,{img:_0x219ce4}=await(-0x1265*-0x1+-0x16a3+0x6*0xb5,Utils_1[_0x431376(0x202)+_0x431376(0x20a)+'re'])(_0x1060a8);await _0x3be955[_0x431376(0x250)](_0x29616f,_0xa833e8,QueryIds[_0x431376(0x294)+'ON'],{'updates':{'picture':_0x219ce4[_0x431376(0x244)](_0x3be955[_0x431376(0x299)]),'settings':null}});},'newsletterRemovePicture':async _0x5bf0c5=>{const _0x11ed39=_0x201967;await _0x3be955[_0x11ed39(0x263)](_0x29616f,_0x5bf0c5,QueryIds[_0x11ed39(0x294)+'ON'],{'updates':{'picture':'','settings':null}});},'newsletterUnfollow':async _0x41dbaf=>{const _0xfbbee3=_0x201967;await _0x3be955[_0xfbbee3(0x21b)](_0x29616f,_0x41dbaf,QueryIds[_0xfbbee3(0x25f)]);},'newsletterFollow':async _0x7585da=>{const _0x3d5160=_0x201967;await _0x3be955[_0x3d5160(0x29c)](_0x29616f,_0x7585da,QueryIds[_0x3d5160(0x21f)]);},'newsletterUnmute':async _0x1e76f2=>{const _0x3e3f85=_0x201967;await _0x3be955[_0x3e3f85(0x21b)](_0x29616f,_0x1e76f2,QueryIds[_0x3e3f85(0x270)]);},'newsletterMute':async _0x2a7147=>{const _0x2cc967=_0x201967;await _0x3be955[_0x2cc967(0x21e)](_0x29616f,_0x2a7147,QueryIds[_0x2cc967(0x26b)]);},'newsletterCreate':async(_0xdb6eb2,_0x57c5d6,_0x23e307)=>{const _0xbf1213=_0x201967;await _0x3be955[_0xbf1213(0x24a)](_0x22b447,{'tag':'iq','attrs':{'to':WABinary_1[_0xbf1213(0x27e)+_0xbf1213(0x205)],'xmlns':_0x3be955[_0xbf1213(0x241)],'id':_0x3be955[_0xbf1213(0x26c)](_0x26d6df),'type':_0x3be955[_0xbf1213(0x224)]},'content':[{'tag':_0x3be955[_0xbf1213(0x29d)],'attrs':{'id':_0x3be955[_0xbf1213(0x230)],'stage':'5'},'content':[]}]});const _0x483494=await _0x3be955[_0xbf1213(0x203)](_0x29616f,undefined,QueryIds[_0xbf1213(0x252)],{'input':{'name':_0xdb6eb2,'description':_0x3be955[_0xbf1213(0x25b)](_0x57c5d6,null)&&_0x3be955[_0xbf1213(0x25b)](_0x57c5d6,void(-0x1aee+-0x19f*-0x7+-0x1*-0xf95))?_0x57c5d6:null,'picture':_0x23e307?(await(-0x8ee+0x5*-0x2a0+0x160e,Utils_1[_0xbf1213(0x202)+_0xbf1213(0x20a)+'re'])(_0x23e307))[_0xbf1213(0x255)][_0xbf1213(0x244)](_0x3be955[_0xbf1213(0x299)]):null,'settings':null}});return(-0x3a9*0x7+0xf6a*-0x2+-0x3873*-0x1,exports[_0xbf1213(0x1e2)+_0xbf1213(0x233)+_0xbf1213(0x268)])(_0x483494,!![]);},'newsletterMetadata':async(_0x2a2dae,_0x2f849e,_0x2a8867)=>{const _0x16d8ef=_0x201967,_0x546382=await _0x3be955[_0x16d8ef(0x287)](_0x29616f,undefined,QueryIds[_0x16d8ef(0x236)],{'input':{'key':_0x2f849e,'type':_0x2a2dae[_0x16d8ef(0x206)+'e'](),'view_role':_0x3be955[_0x16d8ef(0x27b)](_0x2a8867,_0x3be955[_0x16d8ef(0x279)])},'fetch_viewer_metadata':!![],'fetch_full_image':!![],'fetch_creation_time':!![]});return(-0x8b4*0x2+-0x55*0x5d+0x3049,exports[_0x16d8ef(0x1e2)+_0x16d8ef(0x233)+_0x16d8ef(0x268)])(_0x546382);},'newsletterAdminCount':async _0x109f30=>{const _0x25e754=_0x201967;var _0xf8af3c,_0x2a0b3b;const _0x4e94bb=await _0x3be955[_0x25e754(0x1dc)](_0x29616f,_0x109f30,QueryIds[_0x25e754(0x277)+'T']),_0x4f1987=_0x3be955[_0x25e754(0x221)](_0x2a0b3b=_0x3be955[_0x25e754(0x1f5)](_0xf8af3c=(0x1db5+0x1eb*0x7+0x1*-0x2b22,WABinary_1[_0x25e754(0x225)+_0x25e754(0x24b)])(_0x4e94bb,_0x3be955[_0x25e754(0x29a)]),null)||_0x3be955[_0x25e754(0x231)](_0xf8af3c,void(-0x1d9*0x13+0x14d3+-0x8*-0x1c9))?void(-0x1e11+-0x46f*0x5+0x343c):_0xf8af3c[_0x25e754(0x264)],null)||_0x3be955[_0x25e754(0x221)](_0x2a0b3b,void(0xea9+-0x21e6+0x133d))?void(0x252b+-0x6f8+-0x9*0x35b):_0x2a0b3b[_0x25e754(0x244)]();return JSON[_0x25e754(0x28b)](_0x4f1987)[_0x25e754(0x201)][Types_1[_0x25e754(0x1d6)][_0x25e754(0x277)+'T']][_0x25e754(0x24c)+'t'];},'newsletterChangeOwner':async(_0x870955,_0x30417e)=>{const _0x1351e3=_0x201967;await _0x3be955[_0x1351e3(0x1f3)](_0x29616f,_0x870955,QueryIds[_0x1351e3(0x288)+'ER'],{'user_id':_0x30417e});},'newsletterDemote':async(_0x11a365,_0x56718a)=>{const _0x46c53d=_0x201967;await _0x3be955[_0x46c53d(0x21c)](_0x29616f,_0x11a365,QueryIds[_0x46c53d(0x22e)],{'user_id':_0x56718a});},'newsletterDelete':async _0x26a8d5=>{const _0x1aa17f=_0x201967;await _0x3be955[_0x1aa17f(0x21b)](_0x29616f,_0x26a8d5,QueryIds[_0x1aa17f(0x1e6)]);},'newsletterReactMessage':async(_0x5480f0,_0x519a2d,_0x448cb6)=>{const _0x46ad12=_0x201967;await _0x3be955[_0x46ad12(0x243)](_0x22b447,{'tag':_0x3be955[_0x46ad12(0x2a0)],'attrs':{'to':_0x5480f0,...!_0x448cb6?{'edit':'7'}:{},'type':_0x3be955[_0x46ad12(0x29f)],'server_id':_0x519a2d,'id':(0xbc9+0x1923+-0x24ec,Utils_1[_0x46ad12(0x286)+_0x46ad12(0x23b)])()},'content':[{'tag':_0x3be955[_0x46ad12(0x29f)],'attrs':_0x448cb6?{'code':_0x448cb6}:{}}]});},'newsletterFetchMessages':async(_0x22726b,_0x3aa199,_0x4d1846,_0xe439be)=>{const _0x269d29=_0x201967,_0x27c55c=_0x3be955[_0x269d29(0x1d5)](_0xe439be,null)||_0x3be955[_0x269d29(0x1f5)](_0xe439be,void(0x107*0xd+0x116a*0x1+-0x1ec5*0x1))?void(0x1670+0x3a1*0x9+0x1c7*-0x1f):_0xe439be[_0x269d29(0x244)](),_0x53ee72=await _0x3be955[_0x269d29(0x1d0)](_0x3cd031,WABinary_1[_0x269d29(0x27e)+_0x269d29(0x205)],_0x3be955[_0x269d29(0x217)],[{'tag':_0x3be955[_0x269d29(0x208)],'attrs':{'type':_0x22726b,..._0x3be955[_0x269d29(0x1de)](_0x22726b,_0x3be955[_0x269d29(0x266)])?{'key':_0x3aa199}:{'jid':_0x3aa199},'count':_0x4d1846[_0x269d29(0x244)](),'after':_0x3be955[_0x269d29(0x1ff)](_0x27c55c,_0x3be955[_0x269d29(0x1ce)])}}]);return await _0x3be955[_0x269d29(0x274)](_0x2c292d,_0x53ee72,_0x3be955[_0x269d29(0x208)]);},'newsletterFetchUpdates':async(_0x5e5228,_0x53d6d0,_0xf74950,_0x209754)=>{const _0x566278=_0x201967,_0x29f137=await _0x3be955[_0x566278(0x26d)](_0x3cd031,_0x5e5228,_0x3be955[_0x566278(0x217)],[{'tag':_0x3be955[_0x566278(0x272)],'attrs':{'count':_0x53d6d0[_0x566278(0x244)](),'after':(_0x3be955[_0x566278(0x1d5)](_0xf74950,null)||_0x3be955[_0x566278(0x254)](_0xf74950,void(0xc87+-0x43*-0x6+-0xe19))?void(-0xf13*0x1+-0x1663+-0x12bb*-0x2):_0xf74950[_0x566278(0x244)]())||_0x3be955[_0x566278(0x1ce)],'since':(_0x3be955[_0x566278(0x216)](_0x209754,null)||_0x3be955[_0x566278(0x1d9)](_0x209754,void(-0xb*0x1e4+-0xf61+-0x3*-0xc0f))?void(0xf49+0xdf0+-0x1d39):_0x209754[_0x566278(0x244)]())||'0'}}]);return await _0x3be955[_0x566278(0x23e)](_0x2c292d,_0x29f137,_0x3be955[_0x566278(0x1eb)]);}};};function _0x4cf5(_0x2d287d,_0x42c485){const _0x20130c=_0x4536();return _0x4cf5=function(_0x1bc216,_0x149fd7){_0x1bc216=_0x1bc216-(0x2b*0x2b+0x1*-0x1e3e+0x18ce);let _0x1a18e0=_0x20130c[_0x1bc216];return _0x1a18e0;},_0x4cf5(_0x2d287d,_0x42c485);}exports[_0x3eaa48(0x20d)+_0x3eaa48(0x209)]=makeNewsletterSocket;const extractNewsletterMetadata=(_0x43c201,_0x12e443)=>{const _0x4a0575=_0x3eaa48,_0x1d39f8={'XmDWC':function(_0x195509,_0x5a1b8c){return _0x195509===_0x5a1b8c;},'nDEdl':function(_0x55faa4,_0x4c294e){return _0x55faa4===_0x4c294e;},'itNQE':_0x4a0575(0x262),'mVxqv':function(_0x58527a,_0x458aac){return _0x58527a===_0x458aac;},'simNa':function(_0x3c2c91,_0x5de1aa){return _0x3c2c91===_0x5de1aa;},'LawOX':function(_0x45a571,_0x321b3f){return _0x45a571===_0x321b3f;}};var _0x40a9e1,_0xf93ee1,_0x15908e,_0x59adb8;const _0x434e09=_0x1d39f8[_0x4a0575(0x23d)](_0xf93ee1=_0x1d39f8[_0x4a0575(0x1ea)](_0x40a9e1=(-0x22f6+-0x4*0x359+0x305a*0x1,WABinary_1[_0x4a0575(0x225)+_0x4a0575(0x24b)])(_0x43c201,_0x1d39f8[_0x4a0575(0x1fe)]),null)||_0x1d39f8[_0x4a0575(0x278)](_0x40a9e1,void(0x9*-0x24d+0xf6*-0x1a+0x2db1))?void(-0x8c4+-0xc38+0x14fc):_0x40a9e1[_0x4a0575(0x264)],null)||_0x1d39f8[_0x4a0575(0x278)](_0xf93ee1,void(0x2326+0x33a*-0x7+-0xc90))?void(-0x910+0x1cc4+-0x13b4):_0xf93ee1[_0x4a0575(0x244)](),_0x2a03db=JSON[_0x4a0575(0x28b)](_0x434e09)[_0x4a0575(0x201)][_0x12e443?Types_1[_0x4a0575(0x1d6)][_0x4a0575(0x252)]:Types_1[_0x4a0575(0x1d6)][_0x4a0575(0x29e)]],_0x18f8b6={'id':_0x2a03db['id'],'state':_0x2a03db[_0x4a0575(0x1d8)][_0x4a0575(0x260)],'creation_time':+_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x23a)+_0x4a0575(0x291)],'name':_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x1fa)][_0x4a0575(0x1e3)],'nameTime':+_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x1fa)][_0x4a0575(0x1f1)+'e'],'description':_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x20c)+'n'][_0x4a0575(0x1e3)],'descriptionTime':+_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x20c)+'n'][_0x4a0575(0x1f1)+'e'],'invite':_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x25a)],'handle':_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x28f)],'picture':(_0x1d39f8[_0x4a0575(0x1e4)](_0x15908e=_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x242)],null)||_0x1d39f8[_0x4a0575(0x249)](_0x15908e,void(0x466+0x2*-0x599+0xae*0xa))?void(0x26*0x2e+0x14d8+0x7*-0x3f4):_0x15908e[_0x4a0575(0x1ef)+'h'])||null,'preview':(_0x1d39f8[_0x4a0575(0x1ea)](_0x59adb8=_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x22d)],null)||_0x1d39f8[_0x4a0575(0x23d)](_0x59adb8,void(0x16*-0x142+0x1db8+-0x106*0x2))?void(-0x1*-0xc47+0x1*0x45b+-0x10a2):_0x59adb8[_0x4a0575(0x1ef)+'h'])||null,'reaction_codes':_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x219)][_0x4a0575(0x267)+_0x4a0575(0x2a4)][_0x4a0575(0x1e1)],'subscribers':+_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x27d)+_0x4a0575(0x1cf)],'verification':_0x2a03db[_0x4a0575(0x2a3)+_0x4a0575(0x268)][_0x4a0575(0x281)+'on'],'viewer_metadata':_0x2a03db[_0x4a0575(0x27a)+_0x4a0575(0x268)]};return _0x18f8b6;};function _0x4536(){const _0x514a5b=['dren','settings','7150902998','NlTdH','eyHaH','671340kVkOPA','lnsnQ','FOLLOW','LZEbd','JRViq','1761078LUVTee','GUEST','JDZUc','getBinaryN','FvSfG','ZSzqq','count','quPoe','Okpaq','362961','message','preview','DEMOTE','Ewtjg','omtIj','WrMQO','dates','sletterMet','8316537688','031706','METADATA','7dJOkSM','ryNodeChil','ppFiP','creation_t','ssageID','211147','XmDWC','uzBES','makeGroups','getAllBina','FjOCS','picture','qypEg','toString','map','from','580933','get','LawOX','uwQvL','odeChild','admin_coun','OCKNd','messages','UCszm','IoKqp','pRwUC','CREATE','7337137176','miqvH','img','../WABinar','logger','XCfct','erty','invite','NKqwH','MvLzc','4424642','49506xRNpot','UNFOLLOW','type','../Types','result','BnjLc','content','lid','eVTVy','reaction_c','adata','6620195908','rtVaK','MUTE','ZQUcC','GMUyG','80TUMIGC','decryptMes','UNMUTE','YqmLx','OLmht','GcMJv','QcLRL','./groups','qMnbH','ADMIN_COUN','mVxqv','GzarE','viewer_met','XnAWg','214362','subscriber','S_WHATSAPP','592903','7238632346','verificati','attrs','Fmpan','DkHXp','views_coun','generateMe','vaCxG','CHANGE_OWN','NCIEP','Fcpgu','parse','9|3|10|7|1','7341777602','stringify','handle','odeChildre','ime','6551828931','jid','JOB_MUTATI','base64','split','newsletter','awkjk','lzAco','dPUhb','query','sTXhJ','pNmSx','NEWSLETTER','lyCfl','SdOCP','creds','12392RmvRyC','thread_met','odes','UGtXG','__esModule','6996806640','|0|6|8|4|2','7130823597','encode','rwoOl','s_count','tDiGw','406008YcgDfl','tos','../Utils','server_id','HsTsA','XWAPaths','code','state','MPcYo','LlToJ','7871414976','QfByG','OTRsj','sesuh','2515190475','reactions','value','extractNew','text','simNa','089573','DELETE','all','100','MGqfk','nDEdl','DMEpz','363079','Socket','MegZx','direct_pat','pNbcX','update_tim','w:mex','IoHAK','12TpWaBM','Knzwc','ofNAI','20601218','updates','518690radgpi','name','jcVIn','reaction','NpiXd','itNQE','bBQIU','defineProp','data','generatePr','IgEue','sICat','_NET','toUpperCas','live_updat','wYnke','tterSocket','ofilePictu','sageNode','descriptio','makeNewsle','set','AqQzW','notice','message_up','419958THwZnP','257522','408138','GQFyB','JQbQD','MsGHs'];_0x4536=function(){return _0x514a5b;};return _0x4536();}exports[_0x3eaa48(0x1e2)+_0x3eaa48(0x233)+_0x3eaa48(0x268)]=extractNewsletterMetadata;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeNewsletterSocket = void 0;
4
+ const Types_1 = require("../Types");
5
+ const messages_media_1 = require("../Utils/messages-media");
6
+ const WABinary_1 = require("../WABinary");
7
+ const groups_1 = require("./groups");
8
+ const mex_1 = require("./mex");
9
+ const parseNewsletterCreateResponse = (response) => {
10
+ const { id, thread_metadata: thread, viewer_metadata: viewer } = response;
11
+ return {
12
+ id: id,
13
+ owner: undefined,
14
+ name: thread.name.text,
15
+ creation_time: parseInt(thread.creation_time, 10),
16
+ description: thread.description.text,
17
+ invite: thread.invite,
18
+ subscribers: parseInt(thread.subscribers_count, 10),
19
+ verification: thread.verification,
20
+ picture: {
21
+ id: thread.picture.id,
22
+ directPath: thread.picture.direct_path
23
+ },
24
+ mute_state: viewer.mute
25
+ };
26
+ };
27
+ const parseNewsletterMetadata = (result) => {
28
+ if (typeof result !== 'object' || result === null) {
29
+ return null;
30
+ }
31
+ if ('id' in result && typeof result.id === 'string') {
32
+ return result;
33
+ }
34
+ if ('result' in result && typeof result.result === 'object' && result.result !== null && 'id' in result.result) {
35
+ return result.result;
36
+ }
37
+ return null;
38
+ };
39
+ const makeNewsletterSocket = (config) => {
40
+ const sock = (0, groups_1.makeGroupsSocket)(config);
41
+ const { query, generateMessageTag } = sock;
42
+ const executeWMexQuery = (variables, queryId, dataPath) => {
43
+ return (0, mex_1.executeWMexQuery)(variables, queryId, dataPath, query, generateMessageTag);
44
+ };
45
+ const newsletterUpdate = async (jid, updates) => {
46
+ const variables = {
47
+ newsletter_id: jid,
48
+ updates: {
49
+ ...updates,
50
+ settings: null
51
+ }
52
+ };
53
+ return executeWMexQuery(variables, Types_1.QueryIds.UPDATE_METADATA, 'xwa2_newsletter_update');
54
+ };
55
+ return {
56
+ ...sock,
57
+ newsletterCreate: async (name, description) => {
58
+ const variables = {
59
+ input: {
60
+ name,
61
+ description: description ?? null
62
+ }
63
+ };
64
+ const rawResponse = await executeWMexQuery(variables, Types_1.QueryIds.CREATE, Types_1.XWAPaths.xwa2_newsletter_create);
65
+ return parseNewsletterCreateResponse(rawResponse);
66
+ },
67
+ newsletterUpdate,
68
+ newsletterSubscribers: async (jid) => {
69
+ return executeWMexQuery({ newsletter_id: jid }, Types_1.QueryIds.SUBSCRIBERS, Types_1.XWAPaths.xwa2_newsletter_subscribers);
70
+ },
71
+ newsletterMetadata: async (type, key) => {
72
+ const variables = {
73
+ fetch_creation_time: true,
74
+ fetch_full_image: true,
75
+ fetch_viewer_metadata: true,
76
+ input: {
77
+ key,
78
+ type: type.toUpperCase()
79
+ }
80
+ };
81
+ const result = await executeWMexQuery(variables, Types_1.QueryIds.METADATA, Types_1.XWAPaths.xwa2_newsletter_metadata);
82
+ return parseNewsletterMetadata(result);
83
+ },
84
+ newsletterFollow: (jid) => {
85
+ return executeWMexQuery({ newsletter_id: jid }, Types_1.QueryIds.FOLLOW, Types_1.XWAPaths.xwa2_newsletter_follow);
86
+ },
87
+ newsletterUnfollow: (jid) => {
88
+ return executeWMexQuery({ newsletter_id: jid }, Types_1.QueryIds.UNFOLLOW, Types_1.XWAPaths.xwa2_newsletter_unfollow);
89
+ },
90
+ newsletterMute: (jid) => {
91
+ return executeWMexQuery({ newsletter_id: jid }, Types_1.QueryIds.MUTE, Types_1.XWAPaths.xwa2_newsletter_mute_v2);
92
+ },
93
+ newsletterUnmute: (jid) => {
94
+ return executeWMexQuery({ newsletter_id: jid }, Types_1.QueryIds.UNMUTE, Types_1.XWAPaths.xwa2_newsletter_unmute_v2);
95
+ },
96
+ newsletterUpdateName: async (jid, name) => {
97
+ return await newsletterUpdate(jid, { name });
98
+ },
99
+ newsletterUpdateDescription: async (jid, description) => {
100
+ return await newsletterUpdate(jid, { description });
101
+ },
102
+ newsletterUpdatePicture: async (jid, content) => {
103
+ const { img } = await (0, messages_media_1.generateProfilePicture)(content);
104
+ return await newsletterUpdate(jid, { picture: img.toString('base64') });
105
+ },
106
+ newsletterRemovePicture: async (jid) => {
107
+ return await newsletterUpdate(jid, { picture: '' });
108
+ },
109
+ newsletterReactMessage: async (jid, serverId, reaction) => {
110
+ await query({
111
+ tag: 'message',
112
+ attrs: {
113
+ to: jid,
114
+ ...(reaction ? {} : { edit: '7' }),
115
+ type: 'reaction',
116
+ server_id: serverId,
117
+ id: generateMessageTag()
118
+ },
119
+ content: [
120
+ {
121
+ tag: 'reaction',
122
+ attrs: reaction ? { code: reaction } : {}
123
+ }
124
+ ]
125
+ });
126
+ },
127
+ newsletterFetchMessages: async (jid, count, since, after) => {
128
+ const messageUpdateAttrs = {
129
+ count: count.toString()
130
+ };
131
+ if (typeof since === 'number') {
132
+ messageUpdateAttrs.since = since.toString();
133
+ }
134
+ if (after) {
135
+ messageUpdateAttrs.after = after.toString();
136
+ }
137
+ const result = await query({
138
+ tag: 'iq',
139
+ attrs: {
140
+ id: generateMessageTag(),
141
+ type: 'get',
142
+ xmlns: 'newsletter',
143
+ to: jid
144
+ },
145
+ content: [
146
+ {
147
+ tag: 'message_updates',
148
+ attrs: messageUpdateAttrs
149
+ }
150
+ ]
151
+ });
152
+ return result;
153
+ },
154
+ subscribeNewsletterUpdates: async (jid) => {
155
+ const result = await query({
156
+ tag: 'iq',
157
+ attrs: {
158
+ id: generateMessageTag(),
159
+ type: 'set',
160
+ xmlns: 'newsletter',
161
+ to: jid
162
+ },
163
+ content: [{ tag: 'live_updates', attrs: {}, content: [] }]
164
+ });
165
+ const liveUpdatesNode = (0, WABinary_1.getBinaryNodeChild)(result, 'live_updates');
166
+ const duration = liveUpdatesNode?.attrs?.duration;
167
+ return duration ? { duration: duration } : null;
168
+ },
169
+ newsletterAdminCount: async (jid) => {
170
+ const response = await executeWMexQuery({ newsletter_id: jid }, Types_1.QueryIds.ADMIN_COUNT, Types_1.XWAPaths.xwa2_newsletter_admin_count);
171
+ return response.admin_count;
172
+ },
173
+ newsletterChangeOwner: async (jid, newOwnerJid) => {
174
+ await executeWMexQuery({ newsletter_id: jid, user_id: newOwnerJid }, Types_1.QueryIds.CHANGE_OWNER, Types_1.XWAPaths.xwa2_newsletter_change_owner);
175
+ },
176
+ newsletterDemote: async (jid, userJid) => {
177
+ await executeWMexQuery({ newsletter_id: jid, user_id: userJid }, Types_1.QueryIds.DEMOTE, Types_1.XWAPaths.xwa2_newsletter_demote);
178
+ },
179
+ newsletterDelete: async (jid) => {
180
+ await executeWMexQuery({ newsletter_id: jid }, Types_1.QueryIds.DELETE, Types_1.XWAPaths.xwa2_newsletter_delete_v2);
181
+ }
182
+ };
183
+ };
184
+ exports.makeNewsletterSocket = makeNewsletterSocket;
@@ -1,7 +1,8 @@
1
- /// <reference types="node" />
2
1
  import { Boom } from '@hapi/boom';
3
- import { SocketConfig } from '../Types';
4
- import { BinaryNode } from '../WABinary';
2
+ import type { SocketConfig } from '../Types';
3
+ import { type BinaryNode } from '../WABinary';
4
+ import { USyncQuery } from '../WAUSync/';
5
+ import { WebSocketClient } from './Client';
5
6
  /**
6
7
  * Connects to WA servers and performs:
7
8
  * - simple queries (no retry mechanism, wait for connection establishment)
@@ -10,34 +11,39 @@ import { BinaryNode } from '../WABinary';
10
11
  */
11
12
  export declare const makeSocket: (config: SocketConfig) => {
12
13
  type: "md";
13
- ws: any;
14
+ ws: WebSocketClient;
14
15
  ev: import("../Types").BaileysEventEmitter & {
15
16
  process(handler: (events: Partial<import("../Types").BaileysEventMap>) => void | Promise<void>): () => void;
16
17
  buffer(): void;
17
18
  createBufferedFunction<A extends any[], T>(work: (...args: A) => Promise<T>): (...args: A) => Promise<T>;
18
- flush(force?: boolean | undefined): boolean;
19
+ flush(): boolean;
19
20
  isBuffering(): boolean;
20
21
  };
21
22
  authState: {
22
23
  creds: import("../Types").AuthenticationCreds;
23
24
  keys: import("../Types").SignalKeyStoreWithTransaction;
24
25
  };
25
- signalRepository: import("../Types").SignalRepository;
26
+ signalRepository: import("../Types").SignalRepositoryWithLIDStore;
26
27
  readonly user: import("../Types").Contact | undefined;
27
28
  generateMessageTag: () => string;
28
- query: (node: BinaryNode, timeoutMs?: number) => Promise<BinaryNode>;
29
- waitForMessage: <T_1>(msgId: string, timeoutMs?: number | undefined) => Promise<T_1>;
29
+ query: (node: BinaryNode, timeoutMs?: number) => Promise<any>;
30
+ waitForMessage: <T>(msgId: string, timeoutMs?: number | undefined) => Promise<T | undefined>;
30
31
  waitForSocketOpen: () => Promise<void>;
31
32
  sendRawMessage: (data: Uint8Array | Buffer) => Promise<void>;
32
33
  sendNode: (frame: BinaryNode) => Promise<void>;
33
34
  logout: (msg?: string) => Promise<void>;
34
35
  end: (error: Error | undefined) => void;
35
36
  onUnexpectedError: (err: Error | Boom, msg: string) => void;
36
- uploadPreKeys: (count?: number) => Promise<void>;
37
+ uploadPreKeys: (count?: number, retryCount?: number) => Promise<void>;
37
38
  uploadPreKeysToServerIfRequired: () => Promise<void>;
38
- requestPairingCode: (phoneNumber: string) => Promise<string>;
39
+ requestPairingCode: (phoneNumber: string, customPairingCode?: string) => Promise<string>;
39
40
  /** Waits for the connection to WA to reach a state */
40
- waitForConnectionUpdate: (check: (u: Partial<import("../Types").ConnectionState>) => boolean | undefined, timeoutMs?: number | undefined) => Promise<void>;
41
- sendWAMBuffer: (wamBuffer: Buffer) => Promise<BinaryNode>;
41
+ waitForConnectionUpdate: (check: (u: Partial<import("../Types").ConnectionState>) => Promise<boolean | undefined>, timeoutMs?: number) => Promise<void>;
42
+ sendWAMBuffer: (wamBuffer: Buffer) => Promise<any>;
43
+ executeUSyncQuery: (usyncQuery: USyncQuery) => Promise<import("../WAUSync/USyncQuery.js").USyncQueryResult | undefined>;
44
+ onWhatsApp: (...jids: string[]) => Promise<{
45
+ jid: string;
46
+ exists: boolean;
47
+ lid: string;
48
+ }[] | undefined>;
42
49
  };
43
- export type Socket = ReturnType<typeof makeSocket>;