violetics 7.0.7-alpha → 7.0.8-alpha
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.
- package/LICENSE +1 -2
- package/README.md +456 -978
- package/WAProto/GenerateStatics.sh +3 -0
- package/WAProto/WAProto.proto +5479 -0
- package/WAProto/fix-imports.js +81 -0
- package/WAProto/index.d.ts +14017 -0
- package/WAProto/index.js +2670 -9199
- package/engine-requirements.js +7 -10
- package/index.cjs +196 -0
- package/index.d.ts +30 -0
- package/lib/Defaults/index.d.ts +74 -0
- package/lib/Defaults/index.d.ts.map +1 -0
- package/lib/Defaults/index.js +14 -22
- package/lib/Defaults/index.js.map +1 -0
- package/lib/Defaults/phonenumber-mcc.json +223 -0
- package/lib/Signal/Group/ciphertext-message.d.ts +10 -0
- package/lib/Signal/Group/ciphertext-message.d.ts.map +1 -0
- package/lib/Signal/Group/ciphertext-message.js +2 -1
- package/lib/Signal/Group/ciphertext-message.js.map +1 -0
- package/lib/Signal/Group/group-session-builder.d.ts +15 -0
- package/lib/Signal/Group/group-session-builder.d.ts.map +1 -0
- package/lib/Signal/Group/group-session-builder.js +2 -1
- package/lib/Signal/Group/group-session-builder.js.map +1 -0
- package/lib/Signal/Group/group_cipher.d.ts +17 -0
- package/lib/Signal/Group/group_cipher.d.ts.map +1 -0
- package/lib/Signal/Group/group_cipher.js +2 -1
- package/lib/Signal/Group/group_cipher.js.map +1 -0
- package/lib/Signal/Group/index.d.ts +12 -0
- package/lib/Signal/Group/index.d.ts.map +1 -0
- package/lib/Signal/Group/index.js +2 -1
- package/lib/Signal/Group/index.js.map +1 -0
- package/lib/Signal/Group/keyhelper.d.ts +11 -0
- package/lib/Signal/Group/keyhelper.d.ts.map +1 -0
- package/lib/Signal/Group/keyhelper.js +2 -1
- package/lib/Signal/Group/keyhelper.js.map +1 -0
- package/lib/Signal/Group/sender-chain-key.d.ts +14 -0
- package/lib/Signal/Group/sender-chain-key.d.ts.map +1 -0
- package/lib/Signal/Group/sender-chain-key.js +2 -1
- package/lib/Signal/Group/sender-chain-key.js.map +1 -0
- package/lib/Signal/Group/sender-key-distribution-message.d.ts +17 -0
- package/lib/Signal/Group/sender-key-distribution-message.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-distribution-message.js +2 -1
- package/lib/Signal/Group/sender-key-distribution-message.js.map +1 -0
- package/lib/Signal/Group/sender-key-message.d.ts +19 -0
- package/lib/Signal/Group/sender-key-message.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-message.js +2 -1
- package/lib/Signal/Group/sender-key-message.js.map +1 -0
- package/lib/Signal/Group/sender-key-name.d.ts +18 -0
- package/lib/Signal/Group/sender-key-name.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-name.js +2 -1
- package/lib/Signal/Group/sender-key-name.js.map +1 -0
- package/lib/Signal/Group/sender-key-record.d.ts +31 -0
- package/lib/Signal/Group/sender-key-record.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-record.js +2 -1
- package/lib/Signal/Group/sender-key-record.js.map +1 -0
- package/lib/Signal/Group/sender-key-state.d.ts +39 -0
- package/lib/Signal/Group/sender-key-state.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-state.js +2 -1
- package/lib/Signal/Group/sender-key-state.js.map +1 -0
- package/lib/Signal/Group/sender-message-key.d.ts +12 -0
- package/lib/Signal/Group/sender-message-key.d.ts.map +1 -0
- package/lib/Signal/Group/sender-message-key.js +2 -1
- package/lib/Signal/Group/sender-message-key.js.map +1 -0
- package/lib/Signal/libsignal.d.ts +5 -0
- package/lib/Signal/libsignal.d.ts.map +1 -0
- package/lib/Signal/libsignal.js +44 -8
- package/lib/Signal/libsignal.js.map +1 -0
- package/lib/Signal/lid-mapping.d.ts +19 -0
- package/lib/Signal/lid-mapping.d.ts.map +1 -0
- package/lib/Signal/lid-mapping.js +2 -1
- package/lib/Signal/lid-mapping.js.map +1 -0
- package/lib/Socket/Client/index.d.ts +3 -0
- package/lib/Socket/Client/index.d.ts.map +1 -0
- package/lib/Socket/Client/index.js +2 -1
- package/lib/Socket/Client/index.js.map +1 -0
- package/lib/Socket/Client/types.d.ts +16 -0
- package/lib/Socket/Client/types.d.ts.map +1 -0
- package/lib/Socket/Client/types.js +2 -1
- package/lib/Socket/Client/types.js.map +1 -0
- package/lib/Socket/Client/websocket.d.ts +13 -0
- package/lib/Socket/Client/websocket.d.ts.map +1 -0
- package/lib/Socket/Client/websocket.js +2 -1
- package/lib/Socket/Client/websocket.js.map +1 -0
- package/lib/Socket/business.d.ts +202 -0
- package/lib/Socket/business.d.ts.map +1 -0
- package/lib/Socket/business.js +2 -1
- package/lib/Socket/business.js.map +1 -0
- package/lib/Socket/chats.d.ts +111 -0
- package/lib/Socket/chats.d.ts.map +1 -0
- package/lib/Socket/chats.js +154 -69
- package/lib/Socket/chats.js.map +1 -0
- package/lib/Socket/communities.d.ts +258 -0
- package/lib/Socket/communities.d.ts.map +1 -0
- package/lib/Socket/communities.js +2 -1
- package/lib/Socket/communities.js.map +1 -0
- package/lib/Socket/community.js +361 -0
- package/lib/Socket/groups.d.ts +150 -0
- package/lib/Socket/groups.d.ts.map +1 -0
- package/lib/Socket/groups.js +140 -9
- package/lib/Socket/groups.js.map +1 -0
- package/lib/Socket/index.d.ts +245 -0
- package/lib/Socket/index.d.ts.map +1 -0
- package/lib/Socket/index.js +2 -1
- package/lib/Socket/index.js.map +1 -0
- package/lib/Socket/messages-recv.d.ts +187 -0
- package/lib/Socket/messages-recv.d.ts.map +1 -0
- package/lib/Socket/messages-recv.js +471 -253
- package/lib/Socket/messages-recv.js.map +1 -0
- package/lib/Socket/messages-send.d.ts +183 -0
- package/lib/Socket/messages-send.d.ts.map +1 -0
- package/lib/Socket/messages-send.js +620 -226
- package/lib/Socket/messages-send.js.map +1 -0
- package/lib/Socket/mex.d.ts +3 -0
- package/lib/Socket/mex.d.ts.map +1 -0
- package/lib/Socket/mex.js +2 -1
- package/lib/Socket/mex.js.map +1 -0
- package/lib/Socket/newsletter.d.ts +160 -0
- package/lib/Socket/newsletter.d.ts.map +1 -0
- package/lib/Socket/newsletter.js +109 -62
- package/lib/Socket/newsletter.js.map +1 -0
- package/lib/Socket/socket.d.ts +55 -0
- package/lib/Socket/socket.d.ts.map +1 -0
- package/lib/Socket/socket.js +12 -3
- package/lib/Socket/socket.js.map +1 -0
- package/lib/Socket/usync.js +76 -0
- package/lib/Store/index.js +2 -1
- package/lib/Store/make-cache-manager-store.js +77 -0
- package/lib/Store/make-in-memory-store.js +44 -65
- package/lib/Store/make-ordered-dictionary.js +1 -1
- package/lib/Store/object-repository.js +1 -1
- package/lib/Types/Auth.d.ts +116 -0
- package/lib/Types/Auth.d.ts.map +1 -0
- package/lib/Types/Auth.js +2 -1
- package/lib/Types/Auth.js.map +1 -0
- package/lib/Types/Bussines.d.ts +25 -0
- package/lib/Types/Bussines.d.ts.map +1 -0
- package/lib/Types/Bussines.js +2 -1
- package/lib/Types/Bussines.js.map +1 -0
- package/lib/Types/Call.d.ts +15 -0
- package/lib/Types/Call.d.ts.map +1 -0
- package/lib/Types/Call.js +2 -1
- package/lib/Types/Call.js.map +1 -0
- package/lib/Types/Chat.d.ts +123 -0
- package/lib/Types/Chat.d.ts.map +1 -0
- package/lib/Types/Chat.js +2 -1
- package/lib/Types/Chat.js.map +1 -0
- package/lib/Types/Contact.d.ts +24 -0
- package/lib/Types/Contact.d.ts.map +1 -0
- package/lib/Types/Contact.js +2 -1
- package/lib/Types/Contact.js.map +1 -0
- package/lib/Types/Events.d.ts +237 -0
- package/lib/Types/Events.d.ts.map +1 -0
- package/lib/Types/Events.js +2 -1
- package/lib/Types/Events.js.map +1 -0
- package/lib/Types/GroupMetadata.d.ts +67 -0
- package/lib/Types/GroupMetadata.d.ts.map +1 -0
- package/lib/Types/GroupMetadata.js +2 -1
- package/lib/Types/GroupMetadata.js.map +1 -0
- package/lib/Types/Label.d.ts +47 -0
- package/lib/Types/Label.d.ts.map +1 -0
- package/lib/Types/Label.js +2 -1
- package/lib/Types/Label.js.map +1 -0
- package/lib/Types/LabelAssociation.d.ts +30 -0
- package/lib/Types/LabelAssociation.d.ts.map +1 -0
- package/lib/Types/LabelAssociation.js +2 -1
- package/lib/Types/LabelAssociation.js.map +1 -0
- package/lib/Types/Message.d.ts +305 -0
- package/lib/Types/Message.d.ts.map +1 -0
- package/lib/Types/Message.js +2 -8
- package/lib/Types/Message.js.map +1 -0
- package/lib/Types/MexUpdates.js +9 -0
- package/lib/Types/Newsletter.d.ts +135 -0
- package/lib/Types/Newsletter.d.ts.map +1 -0
- package/lib/Types/Newsletter.js +14 -4
- package/lib/Types/Newsletter.js.map +1 -0
- package/lib/Types/Product.d.ts +79 -0
- package/lib/Types/Product.d.ts.map +1 -0
- package/lib/Types/Product.js +2 -1
- package/lib/Types/Product.js.map +1 -0
- package/lib/Types/Signal.d.ts +76 -0
- package/lib/Types/Signal.d.ts.map +1 -0
- package/lib/Types/Signal.js +2 -1
- package/lib/Types/Signal.js.map +1 -0
- package/lib/Types/Socket.d.ts +133 -0
- package/lib/Types/Socket.d.ts.map +1 -0
- package/lib/Types/Socket.js +2 -1
- package/lib/Types/Socket.js.map +1 -0
- package/lib/Types/State.d.ts +39 -0
- package/lib/Types/State.d.ts.map +1 -0
- package/lib/Types/State.js +2 -1
- package/lib/Types/State.js.map +1 -0
- package/lib/Types/USync.d.ts +26 -0
- package/lib/Types/USync.d.ts.map +1 -0
- package/lib/Types/USync.js +2 -1
- package/lib/Types/USync.js.map +1 -0
- package/lib/Types/index.d.ts +65 -0
- package/lib/Types/index.d.ts.map +1 -0
- package/lib/Types/index.js +3 -1
- package/lib/Types/index.js.map +1 -0
- package/lib/Utils/audioToBuffer.js +31 -0
- package/lib/Utils/auth-utils.d.ts +19 -0
- package/lib/Utils/auth-utils.d.ts.map +1 -0
- package/lib/Utils/auth-utils.js +2 -1
- package/lib/Utils/auth-utils.js.map +1 -0
- package/lib/Utils/baileys-event-stream.js +54 -0
- package/lib/Utils/browser-utils.d.ts +4 -0
- package/lib/Utils/browser-utils.d.ts.map +1 -0
- package/lib/Utils/browser-utils.js +35 -22
- package/lib/Utils/browser-utils.js.map +1 -0
- package/lib/Utils/business.d.ts +23 -0
- package/lib/Utils/business.d.ts.map +1 -0
- package/lib/Utils/business.js +2 -1
- package/lib/Utils/business.js.map +1 -0
- package/lib/Utils/chat-utils.d.ts +70 -0
- package/lib/Utils/chat-utils.d.ts.map +1 -0
- package/lib/Utils/chat-utils.js +2 -1
- package/lib/Utils/chat-utils.js.map +1 -0
- package/lib/Utils/crypto.d.ts +37 -0
- package/lib/Utils/crypto.d.ts.map +1 -0
- package/lib/Utils/crypto.js +2 -1
- package/lib/Utils/crypto.js.map +1 -0
- package/lib/Utils/decode-wa-message.d.ts +48 -0
- package/lib/Utils/decode-wa-message.d.ts.map +1 -0
- package/lib/Utils/decode-wa-message.js +2 -1
- package/lib/Utils/decode-wa-message.js.map +1 -0
- package/lib/Utils/event-buffer.d.ts +34 -0
- package/lib/Utils/event-buffer.d.ts.map +1 -0
- package/lib/Utils/event-buffer.js +2 -1
- package/lib/Utils/event-buffer.js.map +1 -0
- package/lib/Utils/generics.d.ts +91 -0
- package/lib/Utils/generics.d.ts.map +1 -0
- package/lib/Utils/generics.js +34 -6
- package/lib/Utils/generics.js.map +1 -0
- package/lib/Utils/history.d.ts +22 -0
- package/lib/Utils/history.d.ts.map +1 -0
- package/lib/Utils/history.js +2 -1
- package/lib/Utils/history.js.map +1 -0
- package/lib/Utils/identity-change-handler.d.ts +37 -0
- package/lib/Utils/identity-change-handler.d.ts.map +1 -0
- package/lib/Utils/identity-change-handler.js +2 -1
- package/lib/Utils/identity-change-handler.js.map +1 -0
- package/lib/Utils/index.d.ts +22 -0
- package/lib/Utils/index.d.ts.map +1 -0
- package/lib/Utils/index.js +7 -1
- package/lib/Utils/index.js.map +1 -0
- package/lib/Utils/link-preview.d.ts +21 -0
- package/lib/Utils/link-preview.d.ts.map +1 -0
- package/lib/Utils/link-preview.js +2 -1
- package/lib/Utils/link-preview.js.map +1 -0
- package/lib/Utils/logger.d.ts +13 -0
- package/lib/Utils/logger.d.ts.map +1 -0
- package/lib/Utils/logger.js +2 -1
- package/lib/Utils/logger.js.map +1 -0
- package/lib/Utils/lt-hash.d.ts +8 -0
- package/lib/Utils/lt-hash.d.ts.map +1 -0
- package/lib/Utils/lt-hash.js +2 -1
- package/lib/Utils/lt-hash.js.map +1 -0
- package/lib/Utils/make-mutex.d.ts +9 -0
- package/lib/Utils/make-mutex.d.ts.map +1 -0
- package/lib/Utils/make-mutex.js +2 -1
- package/lib/Utils/make-mutex.js.map +1 -0
- package/lib/Utils/message-retry-manager.d.ts +110 -0
- package/lib/Utils/message-retry-manager.d.ts.map +1 -0
- package/lib/Utils/message-retry-manager.js +2 -1
- package/lib/Utils/message-retry-manager.js.map +1 -0
- package/lib/Utils/messages-media.d.ts +130 -0
- package/lib/Utils/messages-media.d.ts.map +1 -0
- package/lib/Utils/messages-media.js +185 -185
- package/lib/Utils/messages-media.js.map +1 -0
- package/lib/Utils/messages-newsletter.d.ts +84 -0
- package/lib/Utils/messages-newsletter.js +316 -0
- package/lib/Utils/messages.d.ts +92 -0
- package/lib/Utils/messages.d.ts.map +1 -0
- package/lib/Utils/messages.js +932 -1120
- package/lib/Utils/messages.js.map +1 -0
- package/lib/Utils/noise-handler.d.ts +20 -0
- package/lib/Utils/noise-handler.d.ts.map +1 -0
- package/lib/Utils/noise-handler.js +2 -1
- package/lib/Utils/noise-handler.js.map +1 -0
- package/lib/Utils/pre-key-manager.d.ts +28 -0
- package/lib/Utils/pre-key-manager.d.ts.map +1 -0
- package/lib/Utils/pre-key-manager.js +2 -1
- package/lib/Utils/pre-key-manager.js.map +1 -0
- package/lib/Utils/process-message.d.ts +60 -0
- package/lib/Utils/process-message.d.ts.map +1 -0
- package/lib/Utils/process-message.js +2 -1
- package/lib/Utils/process-message.js.map +1 -0
- package/lib/Utils/reporting-utils.d.ts +11 -0
- package/lib/Utils/reporting-utils.d.ts.map +1 -0
- package/lib/Utils/reporting-utils.js +2 -1
- package/lib/Utils/reporting-utils.js.map +1 -0
- package/lib/Utils/resolve-jid.d.ts +43 -0
- package/lib/Utils/resolve-jid.js +101 -0
- package/lib/Utils/signal.d.ts +34 -0
- package/lib/Utils/signal.d.ts.map +1 -0
- package/lib/Utils/signal.js +2 -1
- package/lib/Utils/signal.js.map +1 -0
- package/lib/Utils/streamToBuffer.js +17 -0
- package/lib/Utils/sync-action-utils.d.ts +19 -0
- package/lib/Utils/sync-action-utils.d.ts.map +1 -0
- package/lib/Utils/sync-action-utils.js +2 -1
- package/lib/Utils/sync-action-utils.js.map +1 -0
- package/lib/Utils/tc-token-utils.d.ts +12 -0
- package/lib/Utils/tc-token-utils.d.ts.map +1 -0
- package/lib/Utils/tc-token-utils.js +2 -1
- package/lib/Utils/tc-token-utils.js.map +1 -0
- package/lib/Utils/use-mongo-file-auth-state.js +77 -0
- package/lib/Utils/use-multi-file-auth-state.d.ts +13 -0
- package/lib/Utils/use-multi-file-auth-state.d.ts.map +1 -0
- package/lib/Utils/use-multi-file-auth-state.js +2 -1
- package/lib/Utils/use-multi-file-auth-state.js.map +1 -0
- package/lib/Utils/use-single-file-auth-state.js +55 -77
- package/lib/Utils/validate-connection.d.ts +11 -0
- package/lib/Utils/validate-connection.d.ts.map +1 -0
- package/lib/Utils/validate-connection.js +4 -10
- package/lib/Utils/validate-connection.js.map +1 -0
- package/lib/WABinary/constants.d.ts +28 -0
- package/lib/WABinary/constants.d.ts.map +1 -0
- package/lib/WABinary/constants.js +2 -1
- package/lib/WABinary/constants.js.map +1 -0
- package/lib/WABinary/decode.d.ts +7 -0
- package/lib/WABinary/decode.d.ts.map +1 -0
- package/lib/WABinary/decode.js +2 -1
- package/lib/WABinary/decode.js.map +1 -0
- package/lib/WABinary/encode.d.ts +3 -0
- package/lib/WABinary/encode.d.ts.map +1 -0
- package/lib/WABinary/encode.js +2 -1
- package/lib/WABinary/encode.js.map +1 -0
- package/lib/WABinary/generic-utils.d.ts +15 -0
- package/lib/WABinary/generic-utils.d.ts.map +1 -0
- package/lib/WABinary/generic-utils.js +14 -113
- package/lib/WABinary/generic-utils.js.map +1 -0
- package/lib/WABinary/index.d.ts +6 -0
- package/lib/WABinary/index.d.ts.map +1 -0
- package/lib/WABinary/index.js +3 -1
- package/lib/WABinary/index.js.map +1 -0
- package/lib/WABinary/jid-utils.d.ts +48 -0
- package/lib/WABinary/jid-utils.d.ts.map +1 -0
- package/lib/WABinary/jid-utils.js +5 -2
- package/lib/WABinary/jid-utils.js.map +1 -0
- package/lib/WABinary/types.d.ts +19 -0
- package/lib/WABinary/types.d.ts.map +1 -0
- package/lib/WABinary/types.js +2 -1
- package/lib/WABinary/types.js.map +1 -0
- package/lib/WAM/BinaryInfo.d.ts +9 -0
- package/lib/WAM/BinaryInfo.d.ts.map +1 -0
- package/lib/WAM/BinaryInfo.js +2 -1
- package/lib/WAM/BinaryInfo.js.map +1 -0
- package/lib/WAM/constants.d.ts +40 -0
- package/lib/WAM/constants.d.ts.map +1 -0
- package/lib/WAM/constants.js +2 -1
- package/lib/WAM/constants.js.map +1 -0
- package/lib/WAM/encode.d.ts +3 -0
- package/lib/WAM/encode.d.ts.map +1 -0
- package/lib/WAM/encode.js +2 -1
- package/lib/WAM/encode.js.map +1 -0
- package/lib/WAM/index.d.ts +4 -0
- package/lib/WAM/index.d.ts.map +1 -0
- package/lib/WAM/index.js +2 -1
- package/lib/WAM/index.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +10 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.js +2 -1
- package/lib/WAUSync/Protocols/USyncContactProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +23 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +2 -1
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +13 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +2 -1
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +13 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js +2 -1
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +26 -0
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +2 -1
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +10 -0
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +2 -1
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/index.d.ts +5 -0
- package/lib/WAUSync/Protocols/index.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/index.js +3 -1
- package/lib/WAUSync/Protocols/index.js.map +1 -0
- package/lib/WAUSync/USyncQuery.d.ts +29 -0
- package/lib/WAUSync/USyncQuery.d.ts.map +1 -0
- package/lib/WAUSync/USyncQuery.js +2 -1
- package/lib/WAUSync/USyncQuery.js.map +1 -0
- package/lib/WAUSync/USyncUser.d.ts +13 -0
- package/lib/WAUSync/USyncUser.d.ts.map +1 -0
- package/lib/WAUSync/USyncUser.js +2 -1
- package/lib/WAUSync/USyncUser.js.map +1 -0
- package/lib/WAUSync/index.d.ts +4 -0
- package/lib/WAUSync/index.d.ts.map +1 -0
- package/lib/WAUSync/index.js +2 -1
- package/lib/WAUSync/index.js.map +1 -0
- package/lib/index.d.ts +12 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +22 -2
- package/lib/index.js.map +1 -0
- package/package.json +75 -53
- package/.github/workflows/publish.yml +0 -75
- package/.pnp.cjs +0 -8572
- package/.pnp.loader.mjs +0 -2126
- package/.yarn/install-state.gz +0 -0
- package/lib/Utils/offline-node-processor.js +0 -39
- package/lib/Utils/stanza-ack.js +0 -37
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import type { WASocket } from '../Types/index.js';
|
|
2
|
+
import type { WAMediaUpload } from '../Types/Message.js';
|
|
3
|
+
|
|
4
|
+
export interface NewsletterButtonItem {
|
|
5
|
+
id: string;
|
|
6
|
+
text?: string;
|
|
7
|
+
displayText?: string;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface NewsletterListRow {
|
|
11
|
+
id: string;
|
|
12
|
+
title: string;
|
|
13
|
+
description?: string;
|
|
14
|
+
rowId?: string;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export interface NewsletterListSection {
|
|
18
|
+
title?: string;
|
|
19
|
+
rows: NewsletterListRow[];
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface NewsletterButtonsParams {
|
|
23
|
+
body: string;
|
|
24
|
+
buttons: NewsletterButtonItem[];
|
|
25
|
+
title?: string;
|
|
26
|
+
footer?: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface NewsletterListParams {
|
|
30
|
+
body: string;
|
|
31
|
+
buttonText: string;
|
|
32
|
+
sections: NewsletterListSection[];
|
|
33
|
+
title?: string;
|
|
34
|
+
footer?: string;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export interface NewsletterCtaUrlParams {
|
|
38
|
+
body: string;
|
|
39
|
+
buttonText: string;
|
|
40
|
+
url: string;
|
|
41
|
+
title?: string;
|
|
42
|
+
footer?: string;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export interface NewsletterUtils {
|
|
46
|
+
/** Kirim teks ke newsletter */
|
|
47
|
+
sendNewsletterText(jid: string, text: string, options?: object): Promise<any>;
|
|
48
|
+
/** Kirim gambar ke newsletter */
|
|
49
|
+
sendNewsletterImage(jid: string, image: WAMediaUpload, options?: { caption?: string; mimetype?: string; jpegThumbnail?: string }): Promise<any>;
|
|
50
|
+
/** Kirim video ke newsletter */
|
|
51
|
+
sendNewsletterVideo(jid: string, video: WAMediaUpload, options?: { caption?: string; mimetype?: string; gifPlayback?: boolean }): Promise<any>;
|
|
52
|
+
/** Kirim PTV (video note lingkaran) ke newsletter */
|
|
53
|
+
sendNewsletterPtv(jid: string, video: WAMediaUpload, options?: { mimetype?: string }): Promise<any>;
|
|
54
|
+
/** Kirim audio ke newsletter */
|
|
55
|
+
sendNewsletterAudio(jid: string, audio: WAMediaUpload, options?: { mimetype?: string; seconds?: number; ptt?: boolean }): Promise<any>;
|
|
56
|
+
/** Kirim dokumen ke newsletter */
|
|
57
|
+
sendNewsletterDocument(jid: string, document: WAMediaUpload, options?: { mimetype?: string; fileName?: string; caption?: string }): Promise<any>;
|
|
58
|
+
/** Kirim sticker ke newsletter */
|
|
59
|
+
sendNewsletterSticker(jid: string, sticker: WAMediaUpload, options?: { isAnimated?: boolean }): Promise<any>;
|
|
60
|
+
/** Kirim pesan dengan quick_reply buttons ke newsletter */
|
|
61
|
+
sendNewsletterButtons(jid: string, params: NewsletterButtonsParams, options?: object): Promise<any>;
|
|
62
|
+
/** Kirim pesan dengan single_select list ke newsletter */
|
|
63
|
+
sendNewsletterList(jid: string, params: NewsletterListParams, options?: object): Promise<any>;
|
|
64
|
+
/** Kirim pesan dengan CTA URL button ke newsletter */
|
|
65
|
+
sendNewsletterCtaUrl(jid: string, params: NewsletterCtaUrlParams, options?: object): Promise<any>;
|
|
66
|
+
/** React ke server message ID newsletter */
|
|
67
|
+
sendNewsletterReact(jid: string, serverId: string, emoji?: string): Promise<any>;
|
|
68
|
+
/** Edit pesan newsletter */
|
|
69
|
+
editNewsletterMessage(jid: string, messageId: string, newText: string): Promise<any>;
|
|
70
|
+
/** Hapus pesan newsletter */
|
|
71
|
+
deleteNewsletterMessage(jid: string, messageId: string): Promise<any>;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Buat object utilities newsletter terikat ke conn.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* const nl = makeNewsletterUtils(conn);
|
|
79
|
+
* await nl.sendNewsletterButtons('120363...@newsletter', {
|
|
80
|
+
* body: 'Pilih opsi:',
|
|
81
|
+
* buttons: [{ id: 'a', text: 'Opsi A' }, { id: 'b', text: 'Opsi B' }]
|
|
82
|
+
* });
|
|
83
|
+
*/
|
|
84
|
+
export declare function makeNewsletterUtils(conn: WASocket): NewsletterUtils;
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* messages-newsletter.js
|
|
3
|
+
* Helper utilities untuk kirim pesan ke WhatsApp newsletter/channel.
|
|
4
|
+
*
|
|
5
|
+
* Fitur:
|
|
6
|
+
* - sendNewsletterText — teks biasa
|
|
7
|
+
* - sendNewsletterImage — gambar + caption opsional
|
|
8
|
+
* - sendNewsletterVideo — video + caption opsional
|
|
9
|
+
* - sendNewsletterPtv — PTV (video note)
|
|
10
|
+
* - sendNewsletterAudio — audio
|
|
11
|
+
* - sendNewsletterDocument — dokumen/file
|
|
12
|
+
* - sendNewsletterSticker — sticker
|
|
13
|
+
* - sendNewsletterButtons — teks + quick_reply buttons
|
|
14
|
+
* - sendNewsletterList — teks + single_select list
|
|
15
|
+
* - sendNewsletterCtaUrl — teks + CTA URL button
|
|
16
|
+
* - sendNewsletterReact — react ke server message ID
|
|
17
|
+
* - editNewsletterMessage — edit pesan yg sudah dikirim
|
|
18
|
+
* - deleteNewsletterMessage — hapus pesan
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Normalise newsletter JID.
|
|
23
|
+
* @param {string} jid
|
|
24
|
+
*/
|
|
25
|
+
function _nl(jid) {
|
|
26
|
+
return jid.endsWith('@newsletter') ? jid : `${jid}@newsletter`;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Buat object utils newsletter yang terikat ke conn.
|
|
31
|
+
* @param {import('../Types').WASocket} conn
|
|
32
|
+
*/
|
|
33
|
+
export function makeNewsletterUtils(conn) {
|
|
34
|
+
|
|
35
|
+
// ── internal helpers ────────────────────────────────────────────────────
|
|
36
|
+
|
|
37
|
+
async function _send(jid, content, options = {}) {
|
|
38
|
+
return conn.sendMessage(_nl(jid), content, options);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// ── Text ────────────────────────────────────────────────────────────────
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Kirim teks ke newsletter.
|
|
45
|
+
* @param {string} jid
|
|
46
|
+
* @param {string} text
|
|
47
|
+
* @param {object} [options]
|
|
48
|
+
*/
|
|
49
|
+
async function sendNewsletterText(jid, text, options = {}) {
|
|
50
|
+
return _send(jid, { text }, options);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// ── Media ───────────────────────────────────────────────────────────────
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Kirim gambar ke newsletter.
|
|
57
|
+
* @param {string} jid
|
|
58
|
+
* @param {import('../Types').WAMediaUpload} image
|
|
59
|
+
* @param {object} [options] { caption, mimetype, jpegThumbnail }
|
|
60
|
+
*/
|
|
61
|
+
async function sendNewsletterImage(jid, image, options = {}) {
|
|
62
|
+
return _send(jid, { image, caption: options.caption, mimetype: options.mimetype, jpegThumbnail: options.jpegThumbnail }, options);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Kirim video ke newsletter.
|
|
67
|
+
* @param {string} jid
|
|
68
|
+
* @param {import('../Types').WAMediaUpload} video
|
|
69
|
+
* @param {object} [options] { caption, mimetype, gifPlayback }
|
|
70
|
+
*/
|
|
71
|
+
async function sendNewsletterVideo(jid, video, options = {}) {
|
|
72
|
+
return _send(jid, { video, caption: options.caption, mimetype: options.mimetype, gifPlayback: options.gifPlayback }, options);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Kirim PTV (video note / lingkaran) ke newsletter.
|
|
77
|
+
* @param {string} jid
|
|
78
|
+
* @param {import('../Types').WAMediaUpload} video
|
|
79
|
+
* @param {object} [options]
|
|
80
|
+
*/
|
|
81
|
+
async function sendNewsletterPtv(jid, video, options = {}) {
|
|
82
|
+
return _send(jid, { video, ptv: true, mimetype: options.mimetype || 'video/mp4' }, options);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Kirim audio ke newsletter.
|
|
87
|
+
* @param {string} jid
|
|
88
|
+
* @param {import('../Types').WAMediaUpload} audio
|
|
89
|
+
* @param {object} [options] { mimetype, seconds, ptt }
|
|
90
|
+
*/
|
|
91
|
+
async function sendNewsletterAudio(jid, audio, options = {}) {
|
|
92
|
+
return _send(jid, { audio, mimetype: options.mimetype, seconds: options.seconds, ptt: options.ptt }, options);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Kirim dokumen ke newsletter.
|
|
97
|
+
* @param {string} jid
|
|
98
|
+
* @param {import('../Types').WAMediaUpload} document
|
|
99
|
+
* @param {object} [options] { mimetype, fileName, caption }
|
|
100
|
+
*/
|
|
101
|
+
async function sendNewsletterDocument(jid, document, options = {}) {
|
|
102
|
+
return _send(jid, {
|
|
103
|
+
document,
|
|
104
|
+
mimetype: options.mimetype || 'application/octet-stream',
|
|
105
|
+
fileName: options.fileName || 'file',
|
|
106
|
+
caption: options.caption
|
|
107
|
+
}, options);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Kirim sticker ke newsletter.
|
|
112
|
+
* @param {string} jid
|
|
113
|
+
* @param {import('../Types').WAMediaUpload} sticker
|
|
114
|
+
* @param {object} [options] { isAnimated }
|
|
115
|
+
*/
|
|
116
|
+
async function sendNewsletterSticker(jid, sticker, options = {}) {
|
|
117
|
+
return _send(jid, { sticker, isAnimated: options.isAnimated }, options);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// ── Buttons ─────────────────────────────────────────────────────────────
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Kirim pesan dengan tombol quick_reply ke newsletter.
|
|
124
|
+
*
|
|
125
|
+
* @param {string} jid
|
|
126
|
+
* @param {object} params
|
|
127
|
+
* @param {string} params.body — isi teks pesan
|
|
128
|
+
* @param {Array<{id: string, text: string}>} params.buttons — maks 3 tombol
|
|
129
|
+
* @param {string} [params.title] — judul header (opsional)
|
|
130
|
+
* @param {string} [params.footer] — footer (opsional)
|
|
131
|
+
* @param {object} [options]
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* await nl.sendNewsletterButtons('120363...@newsletter', {
|
|
135
|
+
* body: 'Pilih salah satu:',
|
|
136
|
+
* buttons: [
|
|
137
|
+
* { id: 'btn_1', text: '✅ Setuju' },
|
|
138
|
+
* { id: 'btn_2', text: '❌ Tidak' },
|
|
139
|
+
* ],
|
|
140
|
+
* footer: 'Powered by bot'
|
|
141
|
+
* });
|
|
142
|
+
*/
|
|
143
|
+
async function sendNewsletterButtons(jid, params, options = {}) {
|
|
144
|
+
const { body, buttons = [], title, footer } = params;
|
|
145
|
+
const nativeButtons = buttons.map(b => ({
|
|
146
|
+
name: 'quick_reply',
|
|
147
|
+
buttonParamsJson: JSON.stringify({
|
|
148
|
+
display_text: b.text || b.displayText || '',
|
|
149
|
+
id: b.id || b.text || ''
|
|
150
|
+
})
|
|
151
|
+
}));
|
|
152
|
+
const interactiveMessage = {
|
|
153
|
+
nativeFlowMessage: {
|
|
154
|
+
buttons: nativeButtons,
|
|
155
|
+
messageParamsJson: '',
|
|
156
|
+
messageVersion: 1
|
|
157
|
+
},
|
|
158
|
+
body: { text: body || '' },
|
|
159
|
+
...(footer ? { footer: { text: footer } } : {}),
|
|
160
|
+
...(title ? { header: { title, hasMediaAttachment: false, subtitle: '' } } : {})
|
|
161
|
+
};
|
|
162
|
+
return _send(jid, { interactiveMessage }, options);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Kirim pesan dengan list single_select ke newsletter.
|
|
167
|
+
*
|
|
168
|
+
* @param {string} jid
|
|
169
|
+
* @param {object} params
|
|
170
|
+
* @param {string} params.body
|
|
171
|
+
* @param {string} params.buttonText — teks tombol pembuka list
|
|
172
|
+
* @param {Array<{title: string, rows: Array<{id: string, title: string, description?: string}>}>} params.sections
|
|
173
|
+
* @param {string} [params.title]
|
|
174
|
+
* @param {string} [params.footer]
|
|
175
|
+
* @param {object} [options]
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* await nl.sendNewsletterList('120363...@newsletter', {
|
|
179
|
+
* body: 'Pilih menu:',
|
|
180
|
+
* buttonText: 'Buka Menu',
|
|
181
|
+
* sections: [{
|
|
182
|
+
* title: 'Kategori',
|
|
183
|
+
* rows: [
|
|
184
|
+
* { id: 'info', title: 'Info Bot' },
|
|
185
|
+
* { id: 'help', title: 'Bantuan' },
|
|
186
|
+
* ]
|
|
187
|
+
* }]
|
|
188
|
+
* });
|
|
189
|
+
*/
|
|
190
|
+
async function sendNewsletterList(jid, params, options = {}) {
|
|
191
|
+
const { body, buttonText, sections = [], title, footer } = params;
|
|
192
|
+
const interactiveMessage = {
|
|
193
|
+
nativeFlowMessage: {
|
|
194
|
+
buttons: [{
|
|
195
|
+
name: 'single_select',
|
|
196
|
+
buttonParamsJson: JSON.stringify({
|
|
197
|
+
title: buttonText || 'Select',
|
|
198
|
+
sections: sections.map(sec => ({
|
|
199
|
+
title: sec.title || '',
|
|
200
|
+
highlight_label: '',
|
|
201
|
+
rows: (sec.rows || []).map(row => ({
|
|
202
|
+
header: '',
|
|
203
|
+
title: row.title || '',
|
|
204
|
+
description: row.description || '',
|
|
205
|
+
id: row.id || row.rowId || row.title || ''
|
|
206
|
+
}))
|
|
207
|
+
}))
|
|
208
|
+
})
|
|
209
|
+
}],
|
|
210
|
+
messageParamsJson: '',
|
|
211
|
+
messageVersion: 1
|
|
212
|
+
},
|
|
213
|
+
body: { text: body || '' },
|
|
214
|
+
...(footer ? { footer: { text: footer } } : {}),
|
|
215
|
+
...(title ? { header: { title, hasMediaAttachment: false, subtitle: '' } } : {})
|
|
216
|
+
};
|
|
217
|
+
return _send(jid, { interactiveMessage }, options);
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* Kirim pesan dengan CTA URL button ke newsletter.
|
|
222
|
+
*
|
|
223
|
+
* @param {string} jid
|
|
224
|
+
* @param {object} params
|
|
225
|
+
* @param {string} params.body
|
|
226
|
+
* @param {string} params.buttonText — teks tombol
|
|
227
|
+
* @param {string} params.url — URL tujuan
|
|
228
|
+
* @param {string} [params.title]
|
|
229
|
+
* @param {string} [params.footer]
|
|
230
|
+
* @param {object} [options]
|
|
231
|
+
*
|
|
232
|
+
* @example
|
|
233
|
+
* await nl.sendNewsletterCtaUrl('120363...@newsletter', {
|
|
234
|
+
* body: 'Kunjungi website kami!',
|
|
235
|
+
* buttonText: 'Buka Website',
|
|
236
|
+
* url: 'https://example.com',
|
|
237
|
+
* });
|
|
238
|
+
*/
|
|
239
|
+
async function sendNewsletterCtaUrl(jid, params, options = {}) {
|
|
240
|
+
const { body, buttonText, url, title, footer } = params;
|
|
241
|
+
const interactiveMessage = {
|
|
242
|
+
nativeFlowMessage: {
|
|
243
|
+
buttons: [{
|
|
244
|
+
name: 'cta_url',
|
|
245
|
+
buttonParamsJson: JSON.stringify({
|
|
246
|
+
display_text: buttonText || 'Open',
|
|
247
|
+
url: url || '',
|
|
248
|
+
merchant_url: url || ''
|
|
249
|
+
})
|
|
250
|
+
}],
|
|
251
|
+
messageParamsJson: '',
|
|
252
|
+
messageVersion: 1
|
|
253
|
+
},
|
|
254
|
+
body: { text: body || '' },
|
|
255
|
+
...(footer ? { footer: { text: footer } } : {}),
|
|
256
|
+
...(title ? { header: { title, hasMediaAttachment: false, subtitle: '' } } : {})
|
|
257
|
+
};
|
|
258
|
+
return _send(jid, { interactiveMessage }, options);
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
// ── Reactions ───────────────────────────────────────────────────────────
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* React ke pesan newsletter via server message ID.
|
|
265
|
+
* @param {string} jid
|
|
266
|
+
* @param {string} serverId — dari raw.newsletter_server_id
|
|
267
|
+
* @param {string} [emoji] — kosong untuk unreact
|
|
268
|
+
*/
|
|
269
|
+
async function sendNewsletterReact(jid, serverId, emoji) {
|
|
270
|
+
return conn.newsletterReactMessage(_nl(jid), serverId, emoji);
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
// ── Edit / Delete ───────────────────────────────────────────────────────
|
|
274
|
+
|
|
275
|
+
/**
|
|
276
|
+
* Edit pesan newsletter yang sudah terkirim.
|
|
277
|
+
* @param {string} jid
|
|
278
|
+
* @param {string} messageId — key.id dari pesan asli
|
|
279
|
+
* @param {string} newText — teks baru
|
|
280
|
+
*/
|
|
281
|
+
async function editNewsletterMessage(jid, messageId, newText) {
|
|
282
|
+
return _send(jid, {
|
|
283
|
+
text: newText,
|
|
284
|
+
edit: { remoteJid: _nl(jid), fromMe: true, id: messageId }
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
/**
|
|
289
|
+
* Hapus pesan newsletter.
|
|
290
|
+
* @param {string} jid
|
|
291
|
+
* @param {string} messageId — key.id dari pesan yang dihapus
|
|
292
|
+
*/
|
|
293
|
+
async function deleteNewsletterMessage(jid, messageId) {
|
|
294
|
+
return _send(jid, {
|
|
295
|
+
delete: { remoteJid: _nl(jid), fromMe: true, id: messageId }
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
// ── return ───────────────────────────────────────────────────────────────
|
|
300
|
+
|
|
301
|
+
return {
|
|
302
|
+
sendNewsletterText,
|
|
303
|
+
sendNewsletterImage,
|
|
304
|
+
sendNewsletterVideo,
|
|
305
|
+
sendNewsletterPtv,
|
|
306
|
+
sendNewsletterAudio,
|
|
307
|
+
sendNewsletterDocument,
|
|
308
|
+
sendNewsletterSticker,
|
|
309
|
+
sendNewsletterButtons,
|
|
310
|
+
sendNewsletterList,
|
|
311
|
+
sendNewsletterCtaUrl,
|
|
312
|
+
sendNewsletterReact,
|
|
313
|
+
editNewsletterMessage,
|
|
314
|
+
deleteNewsletterMessage,
|
|
315
|
+
};
|
|
316
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { type Transform } from 'stream';
|
|
2
|
+
import { proto } from '../../WAProto/index.js';
|
|
3
|
+
import type { AnyMediaMessageContent, AnyMessageContent, MessageContentGenerationOptions, MessageGenerationOptions, MessageGenerationOptionsFromContent, MessageUserReceipt, WAMessage, WAMessageContent, WAMessageKey } from '../Types/index.js';
|
|
4
|
+
import type { ILogger } from './logger.js';
|
|
5
|
+
import { type MediaDownloadOptions } from './messages-media.js';
|
|
6
|
+
type ExtractByKey<T, K extends PropertyKey> = T extends Record<K, any> ? T : never;
|
|
7
|
+
/**
|
|
8
|
+
* Uses a regex to test whether the string contains a URL, and returns the URL if it does.
|
|
9
|
+
* @param text eg. hello https://google.com
|
|
10
|
+
* @returns the URL, eg. https://google.com
|
|
11
|
+
*/
|
|
12
|
+
export declare const extractUrlFromText: (text: string) => string | undefined;
|
|
13
|
+
export declare const generateLinkPreviewIfRequired: (text: string, getUrlInfo: MessageGenerationOptions["getUrlInfo"], logger: MessageGenerationOptions["logger"]) => Promise<import("../Types/index.js").WAUrlInfo | undefined>;
|
|
14
|
+
export declare const prepareWAMessageMedia: (message: AnyMediaMessageContent, options: MessageContentGenerationOptions) => Promise<proto.Message>;
|
|
15
|
+
export declare const prepareDisappearingMessageSettingContent: (ephemeralExpiration?: number) => proto.Message;
|
|
16
|
+
/**
|
|
17
|
+
* Generate forwarded message content like WA does
|
|
18
|
+
* @param message the message to forward
|
|
19
|
+
* @param options.forceForward will show the message as forwarded even if it is from you
|
|
20
|
+
*/
|
|
21
|
+
export declare const generateForwardMessageContent: (message: WAMessage, forceForward?: boolean) => proto.IMessage;
|
|
22
|
+
export declare const hasNonNullishProperty: <K extends PropertyKey>(message: AnyMessageContent, key: K) => message is ExtractByKey<AnyMessageContent, K>;
|
|
23
|
+
export declare const generateWAMessageContent: (message: AnyMessageContent, options: MessageContentGenerationOptions) => Promise<proto.Message>;
|
|
24
|
+
export declare const generateWAMessageFromContent: (jid: string, message: WAMessageContent, options: MessageGenerationOptionsFromContent) => WAMessage;
|
|
25
|
+
export declare const generateWAMessage: (jid: string, content: AnyMessageContent, options: MessageGenerationOptions) => Promise<WAMessage>;
|
|
26
|
+
/** Get the key to access the true type of content */
|
|
27
|
+
export declare const getContentType: (content: proto.IMessage | undefined) => keyof proto.IMessage | undefined;
|
|
28
|
+
export declare const getMediaTypeFromContentType: (contentType: keyof proto.IMessage | undefined, content?: proto.IMessage) => import('../Defaults/index.js').MediaType | undefined;
|
|
29
|
+
/**
|
|
30
|
+
* Normalizes ephemeral, view once messages to regular message content
|
|
31
|
+
* Eg. image messages in ephemeral messages, in view once messages etc.
|
|
32
|
+
* @param content
|
|
33
|
+
* @returns
|
|
34
|
+
*/
|
|
35
|
+
export declare const normalizeMessageContent: (content: WAMessageContent | null | undefined) => WAMessageContent | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Extract the true message content from a message
|
|
38
|
+
* Eg. extracts the inner message from a disappearing message/view once message
|
|
39
|
+
*/
|
|
40
|
+
export declare const extractMessageContent: (content: WAMessageContent | undefined | null) => WAMessageContent | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* Returns the device predicted by message ID
|
|
43
|
+
*/
|
|
44
|
+
export declare const getDevice: (id: string) => "web" | "unknown" | "android" | "ios" | "desktop";
|
|
45
|
+
/** Upserts a receipt in the message */
|
|
46
|
+
export declare const updateMessageWithReceipt: (msg: Pick<WAMessage, "userReceipt">, receipt: MessageUserReceipt) => void;
|
|
47
|
+
/** Update the message with a new reaction */
|
|
48
|
+
export declare const updateMessageWithReaction: (msg: Pick<WAMessage, "reactions">, reaction: proto.IReaction) => void;
|
|
49
|
+
/** Update the message with a new poll update */
|
|
50
|
+
export declare const updateMessageWithPollUpdate: (msg: Pick<WAMessage, "pollUpdates">, update: proto.IPollUpdate) => void;
|
|
51
|
+
/** Update the message with a new event response */
|
|
52
|
+
export declare const updateMessageWithEventResponse: (msg: Pick<WAMessage, "eventResponses">, update: proto.IEventResponse) => void;
|
|
53
|
+
type VoteAggregation = {
|
|
54
|
+
name: string;
|
|
55
|
+
voters: string[];
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Aggregates all poll updates in a poll.
|
|
59
|
+
* @param msg the poll creation message
|
|
60
|
+
* @param meId your jid
|
|
61
|
+
* @returns A list of options & their voters
|
|
62
|
+
*/
|
|
63
|
+
export declare function getAggregateVotesInPollMessage({ message, pollUpdates }: Pick<WAMessage, 'pollUpdates' | 'message'>, meId?: string): VoteAggregation[];
|
|
64
|
+
type ResponseAggregation = {
|
|
65
|
+
response: string;
|
|
66
|
+
responders: string[];
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Aggregates all event responses in an event message.
|
|
70
|
+
* @param msg the event creation message
|
|
71
|
+
* @param meId your jid
|
|
72
|
+
* @returns A list of response types & their responders
|
|
73
|
+
*/
|
|
74
|
+
export declare function getAggregateResponsesInEventMessage({ eventResponses }: Pick<WAMessage, 'eventResponses'>, meId?: string): ResponseAggregation[];
|
|
75
|
+
/** Given a list of message keys, aggregates them by chat & sender. Useful for sending read receipts in bulk */
|
|
76
|
+
export declare const aggregateMessageKeysNotFromMe: (keys: WAMessageKey[]) => {
|
|
77
|
+
jid: string;
|
|
78
|
+
participant: string | undefined;
|
|
79
|
+
messageIds: string[];
|
|
80
|
+
}[];
|
|
81
|
+
type DownloadMediaMessageContext = {
|
|
82
|
+
reuploadRequest: (msg: WAMessage) => Promise<WAMessage>;
|
|
83
|
+
logger: ILogger;
|
|
84
|
+
};
|
|
85
|
+
/**
|
|
86
|
+
* Downloads the given message. Throws an error if it's not a media message
|
|
87
|
+
*/
|
|
88
|
+
export declare const downloadMediaMessage: <Type extends "buffer" | "stream">(message: WAMessage, type: Type, options: MediaDownloadOptions, ctx?: DownloadMediaMessageContext) => Promise<Type extends "buffer" ? Buffer<ArrayBufferLike> : Transform>;
|
|
89
|
+
/** Checks whether the given message is a media message; if it is returns the inner content */
|
|
90
|
+
export declare const assertMediaContent: (content: proto.IMessage | null | undefined) => proto.Message.IVideoMessage | proto.Message.IImageMessage | proto.Message.IAudioMessage | proto.Message.IDocumentMessage | proto.Message.IStickerMessage;
|
|
91
|
+
export {};
|
|
92
|
+
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/Utils/messages.ts"],"names":[],"mappings":"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"}
|