@wppconnect/wa-proto 2.3000.1051295573 → 2.3000.1051327739

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 (4) hide show
  1. package/WAProto.proto +853 -9
  2. package/dist/index.d.ts +41055 -26596
  3. package/dist/index.js +112051 -72192
  4. package/package.json +1 -1
package/WAProto.proto CHANGED
@@ -1,7 +1,7 @@
1
1
  syntax = "proto3";
2
2
  package waproto;
3
3
 
4
- /// WhatsApp Version: 2.3000.1051295573
4
+ /// WhatsApp Version: 2.3000.1051327739
5
5
 
6
6
  message ACP2Setting {
7
7
  optional bool enabled = 1;
@@ -1091,6 +1091,12 @@ message BotUnifiedResponseMutation {
1091
1091
 
1092
1092
  }
1093
1093
 
1094
+ enum COMMAND_COMMAND_TYPE {
1095
+ EVERYONE = 1;
1096
+ SILENT = 2;
1097
+ AI = 3;
1098
+ AI_IMAGINE = 4;
1099
+ }
1094
1100
  message CallLogRecord {
1095
1101
  optional CallResult callResult = 1;
1096
1102
  optional bool isDndMode = 2;
@@ -1491,6 +1497,13 @@ message CombinedFingerprint {
1491
1497
  optional FingerprintData remoteFingerprint = 3;
1492
1498
  }
1493
1499
 
1500
+ message Command {
1501
+ optional COMMAND_COMMAND_TYPE commandType = 1;
1502
+ optional uint32 offset = 2;
1503
+ optional uint32 length = 3;
1504
+ optional string validationToken = 4;
1505
+ }
1506
+
1494
1507
  message CommentMetadata {
1495
1508
  optional MessageKey commentParentKey = 1;
1496
1509
  optional uint32 replyCount = 2;
@@ -1899,6 +1912,154 @@ message Conversation {
1899
1912
  }
1900
1913
  }
1901
1914
 
1915
+ message DecryptMekForDistributionFromTransportSenderInput {
1916
+ required TransportSenderMEKDistributionSingleRecipient mekDistribution = 1;
1917
+ required bytes mekId = 2;
1918
+ required bytes rosterHash = 3;
1919
+ required bytes recipientEncSk = 4;
1920
+ required uint64 version = 5;
1921
+ optional MinosClientConfig conf = 6;
1922
+ message TransportSenderMEKDistributionSingleRecipient {
1923
+ required bytes encryptedMek = 1;
1924
+ required bytes ephemeralEncryptionPk = 2;
1925
+ required bytes signingPk = 3;
1926
+ required bytes signature = 4;
1927
+ optional bytes recipientEpochHead = 5;
1928
+ }
1929
+
1930
+ }
1931
+
1932
+ message DecryptMekForDistributionFromTransportSenderResult {
1933
+ oneof result {
1934
+ DecryptMekForDistributionFromTransportSenderSuccess success = 1;
1935
+ string errorMessage = 2;
1936
+ }
1937
+ }
1938
+
1939
+ message DecryptMekForDistributionFromTransportSenderSuccess {
1940
+ required bytes mek = 1;
1941
+ }
1942
+
1943
+ message DecryptMekForDistributionInput {
1944
+ required bytes toMailboxSk = 1;
1945
+ required bytes fromPk = 2;
1946
+ required bytes mekId = 3;
1947
+ required bytes senderEpochHead = 4;
1948
+ required bytes rosterHash = 5;
1949
+ required bytes ciphertext = 6;
1950
+ optional bytes toEpochHead = 7;
1951
+ optional int32 mekEncryptionVersion = 8;
1952
+ optional MinosClientConfig conf = 9;
1953
+ }
1954
+
1955
+ message DecryptMekForDistributionResult {
1956
+ oneof result {
1957
+ DecryptMekForDistributionSuccess success = 1;
1958
+ string errorMessage = 2;
1959
+ }
1960
+ }
1961
+
1962
+ message DecryptMekForDistributionSuccess {
1963
+ required bytes mek = 1;
1964
+ }
1965
+
1966
+ message DecryptSelfMmkDistributionInput {
1967
+ required bytes encryptedMmk = 1;
1968
+ required bytes exportRootKey = 2;
1969
+ required MessagingMailboxPublicData mmkPublicData = 3;
1970
+ }
1971
+
1972
+ message DecryptSelfMmkDistributionResult {
1973
+ oneof result {
1974
+ DecryptSelfMmkDistributionSuccess success = 1;
1975
+ string errorMessage = 2;
1976
+ }
1977
+ }
1978
+
1979
+ message DecryptSelfMmkDistributionSuccess {
1980
+ required bytes mmkSeed = 1;
1981
+ }
1982
+
1983
+ message DeriveAttachmentAccessTokenSecretInput {
1984
+ required bytes mediaKey = 1;
1985
+ }
1986
+
1987
+ message DeriveAttachmentAccessTokenSecretResult {
1988
+ required bytes attachmentAccessTokenSecret = 1;
1989
+ }
1990
+
1991
+ message DeriveAttachmentPrimaryKeySecretInput {
1992
+ required bytes mediaKey = 1;
1993
+ }
1994
+
1995
+ message DeriveAttachmentPrimaryKeySecretResult {
1996
+ required bytes attachmentPrimaryKeySecret = 1;
1997
+ }
1998
+
1999
+ message DeriveMailboxAuthKeypairInput {
2000
+ required bytes exportRootKey = 1;
2001
+ required uint64 epochNumber = 2;
2002
+ }
2003
+
2004
+ message DeriveMailboxAuthKeypairResult {
2005
+ required bytes mailboxAuthPublicKey = 1;
2006
+ required bytes mailboxAuthPrivateKey = 2;
2007
+ }
2008
+
2009
+ message DeriveMailboxEncryptionKeypairInput {
2010
+ required bytes exportRootKey = 1;
2011
+ required uint64 epochNumber = 2;
2012
+ }
2013
+
2014
+ message DeriveMailboxEncryptionKeypairResult {
2015
+ required bytes mailboxEncryptionPublicKey = 1;
2016
+ required bytes mailboxEncryptionPrivateKey = 2;
2017
+ }
2018
+
2019
+ message DeriveMailboxSigningKeypairInput {
2020
+ required bytes exportRootKey = 1;
2021
+ required uint64 epochNumber = 2;
2022
+ }
2023
+
2024
+ message DeriveMailboxSigningKeypairResult {
2025
+ oneof result {
2026
+ DeriveMailboxSigningKeypairSuccess success = 1;
2027
+ string errorMessage = 2;
2028
+ }
2029
+ }
2030
+
2031
+ message DeriveMailboxSigningKeypairSuccess {
2032
+ required bytes mailboxSigningPublicKey = 1;
2033
+ required bytes mailboxSigningPrivateKey = 2;
2034
+ }
2035
+
2036
+ message DeriveMessagingMailboxKeypairsInput {
2037
+ required bytes mmkSeed = 1;
2038
+ }
2039
+
2040
+ message DeriveMessagingMailboxKeypairsResult {
2041
+ oneof result {
2042
+ DeriveMessagingMailboxKeypairsSuccess success = 1;
2043
+ string errorMessage = 2;
2044
+ }
2045
+ }
2046
+
2047
+ message DeriveMessagingMailboxKeypairsSuccess {
2048
+ required bytes encSk = 1;
2049
+ required bytes encPk = 2;
2050
+ optional bytes authSk = 3;
2051
+ optional bytes authPk = 4;
2052
+ }
2053
+
2054
+ message DetachedDevicePublicData {
2055
+ required uint64 deviceId = 1;
2056
+ required bytes name = 2;
2057
+ required bytes sigPk = 3;
2058
+ required bytes authPk = 4;
2059
+ required bytes encPk = 5;
2060
+ required bytes signature = 6;
2061
+ }
2062
+
1902
2063
  message DeviceCapabilities {
1903
2064
  optional ChatLockSupportLevel chatLockSupportLevel = 1;
1904
2065
  optional LIDMigration lidMigration = 2;
@@ -2043,7 +2204,7 @@ message DeviceProps {
2043
2204
  optional bool supportInlineContacts = 24;
2044
2205
  optional bool supportNewsletter = 25;
2045
2206
  optional bool supportUniversalReachChat = 26;
2046
- optional bool supportOmittedConversationIndex = 27;
2207
+ optional bool supportOmittedConversationMetadata = 28;
2047
2208
  }
2048
2209
 
2049
2210
  enum PlatformType {
@@ -2102,6 +2263,127 @@ message DisappearingMode {
2102
2263
  }
2103
2264
  }
2104
2265
 
2266
+ enum EXTENDED_CONTENT_MESSAGE_CTA_BUTTON_TYPE {
2267
+ OPEN_NATIVE = 11;
2268
+ }
2269
+ enum EXTENDED_CONTENT_MESSAGE_EXTENDED_CONTENT_TYPE {
2270
+ UNSUPPORTED = -1;
2271
+ IG_STORY_PHOTO_MENTION = 4;
2272
+ IG_SINGLE_IMAGE_POST_SHARE = 9;
2273
+ IG_MULTIPOST_SHARE = 10;
2274
+ IG_SINGLE_VIDEO_POST_SHARE = 11;
2275
+ IG_STORY_PHOTO_SHARE = 12;
2276
+ IG_STORY_VIDEO_SHARE = 13;
2277
+ IG_CLIPS_SHARE = 14;
2278
+ IG_IGTV_SHARE = 15;
2279
+ IG_SHOP_SHARE = 16;
2280
+ IG_PROFILE_SHARE = 19;
2281
+ IG_STORY_PHOTO_HIGHLIGHT_SHARE = 20;
2282
+ IG_STORY_VIDEO_HIGHLIGHT_SHARE = 21;
2283
+ IG_STORY_REPLY = 22;
2284
+ IG_STORY_REACTION = 23;
2285
+ IG_STORY_VIDEO_MENTION = 24;
2286
+ IG_STORY_HIGHLIGHT_REPLY = 25;
2287
+ IG_STORY_HIGHLIGHT_REACTION = 26;
2288
+ IG_EXTERNAL_LINK = 27;
2289
+ IG_RECEIVER_FETCH = 28;
2290
+ FB_FEED_SHARE = 1000;
2291
+ FB_STORY_REPLY = 1001;
2292
+ FB_STORY_SHARE = 1002;
2293
+ FB_STORY_MENTION = 1003;
2294
+ FB_FEED_VIDEO_SHARE = 1004;
2295
+ FB_GAMING_CUSTOM_UPDATE = 1005;
2296
+ FB_PRODUCER_STORY_REPLY = 1006;
2297
+ FB_EVENT = 1007;
2298
+ FB_FEED_POST_PRIVATE_REPLY = 1008;
2299
+ FB_SHORT = 1009;
2300
+ FB_COMMENT_MENTION_SHARE = 1010;
2301
+ FB_POST_MENTION = 1011;
2302
+ FB_PROFILE_DIRECTORY_ITEM = 1013;
2303
+ FB_FEED_POST_REACTION_REPLY = 1014;
2304
+ FB_QUICKSNAP_REPLY = 1015;
2305
+ MSG_STATUS_REPLY = 1016;
2306
+ FB_GROUP_POST = 1017;
2307
+ FB_DAILY_GAME_CHALLENGE = 1018;
2308
+ FB_QUICKSNAP_REACTION_REPLY = 1019;
2309
+ MSG_EXTERNAL_LINK_SHARE = 2000;
2310
+ MSG_P2P_PAYMENT = 2001;
2311
+ MSG_LOCATION_SHARING = 2002;
2312
+ MSG_LOCATION_SHARING_V2 = 2003;
2313
+ MSG_HIGHLIGHTS_TAB_FRIEND_UPDATES_REPLY = 2004;
2314
+ MSG_HIGHLIGHTS_TAB_LOCAL_EVENT_REPLY = 2005;
2315
+ MSG_RECEIVER_FETCH = 2006;
2316
+ MSG_IG_MEDIA_SHARE = 2007;
2317
+ MSG_GEN_AI_SEARCH_PLUGIN_RESPONSE = 2008;
2318
+ MSG_REELS_LIST = 2009;
2319
+ MSG_CONTACT = 2010;
2320
+ MSG_THREADS_POST_SHARE = 2011;
2321
+ MSG_FILE = 2012;
2322
+ MSG_AVATAR_DETAILS = 2013;
2323
+ MSG_AI_CONTACT = 2014;
2324
+ MSG_MEMORIES_SHARE = 2015;
2325
+ MSG_SHARED_ALBUM_REPLY = 2016;
2326
+ MSG_SHARED_ALBUM = 2017;
2327
+ MSG_OCCAMADILLO_XMA = 2018;
2328
+ MSG_GEN_AI_SUBSCRIPTION = 2021;
2329
+ MSG_GEN_AI_REMINDER = 2022;
2330
+ MSG_GEN_AI_MEMU_ONBOARDING_RESPONSE = 2023;
2331
+ MSG_NOTE_REPLY = 2024;
2332
+ MSG_NOTE_MENTION = 2025;
2333
+ GEN_AI_ENTITY = 2026;
2334
+ MSG_OPG_P2P_PAYMENT = 2027;
2335
+ GEN_AI_RICH_RESPONSE = 2028;
2336
+ MSG_MUSIC_STICKER = 2029;
2337
+ MSG_PHONE_NUMBER = 2030;
2338
+ AI_ACTIVITY_SHARE = 2031;
2339
+ MSG_PRIVATE_XMA = 2032;
2340
+ MSG_SOCIAL_CUE_MEMORIES = 2033;
2341
+ MSG_MANUS_GROWTH_REFERRAL = 2060;
2342
+ MSG_MOMENT_LINK = 2061;
2343
+ MSG_HORIZON_WEEL = 2062;
2344
+ MSG_MOMENT_ADDED = 2063;
2345
+ MSG_STORYTELLING_PROMPT = 2067;
2346
+ MSG_SUPERVISION_INVITE = 2068;
2347
+ MSG_SOCIAL_CUE_MLE = 2069;
2348
+ MSG_SOCIAL_CUE_POST = 2070;
2349
+ RTC_AUDIO_CALL = 3000;
2350
+ RTC_VIDEO_CALL = 3001;
2351
+ RTC_MISSED_AUDIO_CALL = 3002;
2352
+ RTC_MISSED_VIDEO_CALL = 3003;
2353
+ RTC_GROUP_AUDIO_CALL = 3004;
2354
+ RTC_GROUP_VIDEO_CALL = 3005;
2355
+ RTC_MISSED_GROUP_AUDIO_CALL = 3006;
2356
+ RTC_MISSED_GROUP_VIDEO_CALL = 3007;
2357
+ RTC_ONGOING_AUDIO_CALL = 3008;
2358
+ RTC_ONGOING_VIDEO_CALL = 3009;
2359
+ MSG_RECEIVER_FETCH_FALLBACK = 3025;
2360
+ DATACLASS_SENDER_COPY = 4000;
2361
+ }
2362
+ enum EXTENDED_CONTENT_MESSAGE_OVERLAY_ICON_GLYPH {
2363
+ INFO = 0;
2364
+ EYE_OFF = 1;
2365
+ NEWS_OFF = 2;
2366
+ WARNING = 3;
2367
+ PRIVATE = 4;
2368
+ NONE = 5;
2369
+ MEDIA_LABEL = 6;
2370
+ POST_COVER = 7;
2371
+ POST_LABEL = 8;
2372
+ WARNING_SCREENS = 9;
2373
+ }
2374
+ enum EXTENDED_CONTENT_MESSAGE_XMA_DATACLASS_TYPE {
2375
+ SENDER_COPY = 0;
2376
+ SERVER = 1;
2377
+ SIGNED_CLIENT = 2;
2378
+ }
2379
+ enum EXTENDED_CONTENT_MESSAGE_XMA_LAYOUT_TYPE {
2380
+ SINGLE = 0;
2381
+ HSCROLL = 1;
2382
+ PORTRAIT = 3;
2383
+ STANDARD_DXMA = 12;
2384
+ LIST_DXMA = 15;
2385
+ GRID = 16;
2386
+ }
2105
2387
  message EmbeddedContent {
2106
2388
  oneof content {
2107
2389
  EmbeddedMessage embeddedMessage = 1;
@@ -2131,6 +2413,46 @@ message EmbeddedMusic {
2131
2413
  optional int64 overlapDurationInMs = 14;
2132
2414
  }
2133
2415
 
2416
+ message EncryptMekForDistributionInput {
2417
+ required bytes senderEpochHead = 1;
2418
+ required bytes toMailboxPk = 2;
2419
+ required MailboxAuthKP fromKeypair = 3;
2420
+ required MekBundle mek = 4;
2421
+ optional bytes toEpochHead = 5;
2422
+ optional MinosClientConfig conf = 6;
2423
+ message MailboxAuthKP {
2424
+ required bytes sk = 1;
2425
+ required bytes pk = 2;
2426
+ }
2427
+
2428
+ }
2429
+
2430
+ message EncryptMekForDistributionResult {
2431
+ required bytes ciphertext = 1;
2432
+ required uint64 version = 2;
2433
+ }
2434
+
2435
+ message EncryptMeksForDistributionFromTransportSenderInput {
2436
+ required MekBundle mek = 1;
2437
+ required TransportSigningKP transportSigningKp = 2;
2438
+ repeated bytes recipientMailboxEncryptionPks = 3;
2439
+ repeated bytes recipientEpochHeads = 4;
2440
+ optional MinosClientConfig conf = 5;
2441
+ message TransportSigningKP {
2442
+ required bytes sk = 1;
2443
+ required bytes pk = 2;
2444
+ }
2445
+
2446
+ }
2447
+
2448
+ message EncryptMeksForDistributionFromTransportSenderResult {
2449
+ repeated bytes encryptedMeks = 1;
2450
+ required bytes ephemeralEncryptionPk = 2;
2451
+ required bytes signingPk = 3;
2452
+ required bytes signature = 4;
2453
+ required uint64 version = 5;
2454
+ }
2455
+
2134
2456
  message EncryptedPairingRequest {
2135
2457
  optional bytes encryptedPayload = 1;
2136
2458
  optional bytes iv = 2;
@@ -2141,6 +2463,20 @@ message EphemeralSetting {
2141
2463
  optional sfixed64 timestamp = 2;
2142
2464
  }
2143
2465
 
2466
+ message EpochPublicData {
2467
+ required uint64 epochNumber = 1;
2468
+ required string userFbid = 2;
2469
+ required bytes mailboxSigningPk = 3;
2470
+ required bytes mailboxEncryptionPk = 4;
2471
+ required bytes mailboxAuthPk = 5;
2472
+ optional bytes previousEpochHead = 6;
2473
+ }
2474
+
2475
+ message EpochSignatures {
2476
+ required bytes selfSignature = 1;
2477
+ optional bytes prevSignature = 2;
2478
+ }
2479
+
2144
2480
  message EventAdditionalMetadata {
2145
2481
  optional bool isStale = 1;
2146
2482
  }
@@ -2161,6 +2497,47 @@ message ExitCode {
2161
2497
  optional string text = 2;
2162
2498
  }
2163
2499
 
2500
+ message ExtendedContentMessage {
2501
+ optional SubProtocol associatedMessage = 1;
2502
+ optional EXTENDED_CONTENT_MESSAGE_EXTENDED_CONTENT_TYPE targetType = 2;
2503
+ optional string targetUsername = 3;
2504
+ optional string targetId = 4;
2505
+ optional int64 targetExpiringAtSec = 5;
2506
+ optional EXTENDED_CONTENT_MESSAGE_XMA_LAYOUT_TYPE xmaLayoutType = 6;
2507
+ repeated CTA ctas = 7;
2508
+ repeated SubProtocol previews = 8;
2509
+ optional string titleText = 9;
2510
+ optional string subtitleText = 10;
2511
+ optional uint32 maxTitleNumOfLines = 11;
2512
+ optional uint32 maxSubtitleNumOfLines = 12;
2513
+ optional SubProtocol favicon = 13;
2514
+ optional SubProtocol headerImage = 14;
2515
+ optional string headerTitle = 15;
2516
+ optional EXTENDED_CONTENT_MESSAGE_OVERLAY_ICON_GLYPH overlayIconGlyph = 16;
2517
+ optional string overlayTitle = 17;
2518
+ optional string overlayDescription = 18;
2519
+ optional string sentWithMessageId = 19;
2520
+ optional string messageText = 20;
2521
+ optional string headerSubtitle = 21;
2522
+ optional string xmaDataclass = 22;
2523
+ optional string contentRef = 23;
2524
+ repeated string mentionedJid = 24;
2525
+ repeated Command commands = 25;
2526
+ repeated Mention mentions = 26;
2527
+ optional EXTENDED_CONTENT_MESSAGE_XMA_DATACLASS_TYPE xmaDataclassType = 27;
2528
+ optional string signedXmaDataclassValidation = 28;
2529
+ optional string featureSharedSessionId = 29;
2530
+ message CTA {
2531
+ optional EXTENDED_CONTENT_MESSAGE_CTA_BUTTON_TYPE buttonType = 1;
2532
+ optional string title = 2;
2533
+ optional string actionUrl = 3;
2534
+ optional string nativeUrl = 4;
2535
+ optional string ctaType = 5;
2536
+ optional string actionContentBlob = 6;
2537
+ }
2538
+
2539
+ }
2540
+
2164
2541
  message ExternalBlobReference {
2165
2542
  optional bytes mediaKey = 1;
2166
2543
  optional string directPath = 2;
@@ -2170,6 +2547,11 @@ message ExternalBlobReference {
2170
2547
  optional bytes fileEncSha256 = 6;
2171
2548
  }
2172
2549
 
2550
+ enum FUTURE_PROOF_BEHAVIOR {
2551
+ PLACEHOLDER = 0;
2552
+ NO_PLACEHOLDER = 1;
2553
+ IGNORE = 2;
2554
+ }
2173
2555
  message Field {
2174
2556
  optional uint32 minVersion = 1;
2175
2557
  optional uint32 maxVersion = 2;
@@ -2193,6 +2575,22 @@ message ForwardedAIBotMessageInfo {
2193
2575
  optional string creatorName = 3;
2194
2576
  }
2195
2577
 
2578
+ message GenerateMekInput {
2579
+ repeated bytes epochHeads = 1;
2580
+ }
2581
+
2582
+ message GenerateMekResult {
2583
+ required MekBundle mek = 1;
2584
+ }
2585
+
2586
+ message GenerateMekRosterHashInput {
2587
+ repeated bytes epochHeads = 1;
2588
+ }
2589
+
2590
+ message GenerateMekRosterHashResult {
2591
+ required bytes rosterHash = 1;
2592
+ }
2593
+
2196
2594
  message GlobalSettings {
2197
2595
  optional WallpaperSettings lightThemeWallpaper = 1;
2198
2596
  optional MediaVisibility mediaVisibility = 2;
@@ -2353,8 +2751,8 @@ message HistorySync {
2353
2751
  repeated InlineContact inlineContacts = 20;
2354
2752
  optional bool inlineContactsProvided = 21;
2355
2753
  repeated StickerMetadata favoriteStickers = 22;
2356
- repeated RecoverableHistoryConversation omittedConversations = 23;
2357
- optional bool omittedConversationsProvided = 24;
2754
+ optional OmittedConversationMetadata omittedConversationMetadata = 25;
2755
+ optional string omittedConversationMetadataSnapshotId = 26;
2358
2756
  enum BotAIWaitListState {
2359
2757
  IN_WAITLIST = 0;
2360
2758
  AI_AVAILABLE = 1;
@@ -2549,6 +2947,200 @@ message Location {
2549
2947
  optional string name = 3;
2550
2948
  }
2551
2949
 
2950
+ enum MENTION_MENTION_TYPE {
2951
+ PROFILE = 0;
2952
+ }
2953
+ message MandrakeCreateMmkInput {
2954
+ required bytes exportRootKey = 1;
2955
+ required uint64 epochNumber = 2;
2956
+ required bytes epochHead = 3;
2957
+ optional MessagingMailboxPublicData prevMmk = 4;
2958
+ repeated DetachedDevicePublicData currentPeers = 5;
2959
+ repeated DetachedDevicePublicData newPeers = 6;
2960
+ }
2961
+
2962
+ message MandrakeCreateMmkResult {
2963
+ oneof result {
2964
+ SignedMmkDistributionFromMailbox success = 1;
2965
+ string errorMessage = 2;
2966
+ }
2967
+ }
2968
+
2969
+ message MandrakeDecryptMekInput {
2970
+ required bytes encryptedMek = 1;
2971
+ required bytes recipientsHash = 4;
2972
+ required bytes recipientEncSk = 5;
2973
+ optional uint64 mekEncryptionVersion = 6;
2974
+ optional MinosClientConfig conf = 7;
2975
+ required MessagingMailboxPublicData recipientMmk = 8;
2976
+ optional bytes mekId = 9;
2977
+ optional MerkleMembershipProof recipientMembershipProof = 10;
2978
+ oneof senderPublicData {
2979
+ MandrakeDecryptMekInput.MmkSenderPublicData mmkSender = 2;
2980
+ MandrakeDecryptMekInput.EpochSenderPublicData epochSender = 3;
2981
+ MandrakeDecryptMekInput.PrecomputedEpochSenderPublicData precomputedEpochSender = 11;
2982
+ }
2983
+ message EpochSenderPublicData {
2984
+ required EpochPublicData epochPublicData = 1;
2985
+ }
2986
+
2987
+ message MmkSenderPublicData {
2988
+ required MessagingMailboxPublicData mmkPublicData = 1;
2989
+ }
2990
+
2991
+ message PrecomputedEpochSenderPublicData {
2992
+ required bytes authPk = 1;
2993
+ required bytes epochHead = 2;
2994
+ }
2995
+
2996
+ }
2997
+
2998
+ message MandrakeDecryptMekResult {
2999
+ oneof result {
3000
+ MandrakeDecryptMekSuccess success = 1;
3001
+ string errorMessage = 2;
3002
+ }
3003
+ }
3004
+
3005
+ message MandrakeDecryptMekSuccess {
3006
+ required bytes mek = 1;
3007
+ }
3008
+
3009
+ message MandrakeEncryptMekInput {
3010
+ required MandrakeMekBundle mek = 1;
3011
+ repeated MessagingMailboxPublicData recipients = 2;
3012
+ optional MinosClientConfig conf = 5;
3013
+ oneof sender {
3014
+ MandrakeEncryptMekInput.MmkSender mmkSender = 3;
3015
+ MandrakeEncryptMekInput.EpochSender epochSender = 4;
3016
+ MandrakeEncryptMekInput.DetachedDeviceSender detachedDeviceSender = 6;
3017
+ }
3018
+ message DetachedDeviceSender {
3019
+ required DetachedDevicePublicData detachedDevicePublicData = 1;
3020
+ required bytes authSk = 2;
3021
+ required bytes authPk = 3;
3022
+ }
3023
+
3024
+ message EpochSender {
3025
+ required EpochPublicData epochPublicData = 1;
3026
+ required bytes authSk = 2;
3027
+ required bytes authPk = 3;
3028
+ }
3029
+
3030
+ message MmkSender {
3031
+ required MessagingMailboxPublicData mmkPublicData = 1;
3032
+ required bytes authSk = 2;
3033
+ required bytes authPk = 3;
3034
+ }
3035
+
3036
+ }
3037
+
3038
+ message MandrakeEncryptMekResult {
3039
+ oneof result {
3040
+ MandrakeEncryptMekSuccess success = 1;
3041
+ string errorMessage = 2;
3042
+ }
3043
+ }
3044
+
3045
+ message MandrakeEncryptMekSuccess {
3046
+ repeated MekDistributionSingleRecipient distributions = 1;
3047
+ required bytes recipientsHash = 2;
3048
+ required uint64 version = 3;
3049
+ message MekDistributionSingleRecipient {
3050
+ required bytes encryptedMek = 1;
3051
+ required MessagingMailboxPublicData toMmk = 2;
3052
+ optional MerkleMembershipProof recipientMembershipProof = 3;
3053
+ }
3054
+
3055
+ }
3056
+
3057
+ message MandrakeMekBundle {
3058
+ required bytes key = 1;
3059
+ required bytes mekId = 2;
3060
+ required bytes mailboxHeadHash = 3;
3061
+ }
3062
+
3063
+ message MandrakeOpenEpochInput {
3064
+ required string userFbid = 1;
3065
+ required uint64 epochNumber = 2;
3066
+ required bytes exportRootKey = 3;
3067
+ required bytes previousExportRootKey = 4;
3068
+ required uint64 previousEpochNumber = 5;
3069
+ required bytes previousEpochHead = 6;
3070
+ optional MessagingMailboxPublicData previousMmk = 7;
3071
+ repeated DetachedDevicePublicData detachedDevices = 8;
3072
+ }
3073
+
3074
+ message MandrakeOpenEpochResult {
3075
+ oneof result {
3076
+ MandrakeOpenEpochSuccess success = 1;
3077
+ string errorMessage = 2;
3078
+ }
3079
+ }
3080
+
3081
+ message MandrakeOpenEpochSuccess {
3082
+ required MinosSignedEpoch minosSignedEpoch = 1;
3083
+ required SignedMmkDistributionFromMailbox signedMmkDistribution = 2;
3084
+ }
3085
+
3086
+ message MandrakeOpenInitialEpochInput {
3087
+ required string userFbid = 1;
3088
+ required uint64 epochNumber = 2;
3089
+ required bytes exportRootKey = 3;
3090
+ repeated DetachedDevicePublicData detachedDevices = 4;
3091
+ }
3092
+
3093
+ message MandrakeOpenInitialEpochResult {
3094
+ oneof result {
3095
+ MandrakeOpenEpochSuccess success = 1;
3096
+ string errorMessage = 2;
3097
+ }
3098
+ }
3099
+
3100
+ message MandrakeValidateAndDecryptSelfMmkInput {
3101
+ required MessagingMailboxPublicData newMmk = 1;
3102
+ required bytes signature = 2;
3103
+ optional MessagingMailboxPublicData existingMmk = 3;
3104
+ required bytes exportRootKey = 4;
3105
+ required uint64 epochNumber = 5;
3106
+ required bytes expectedEpochHead = 6;
3107
+ required bytes encryptedMmk = 7;
3108
+ required uint64 version = 8;
3109
+ optional MessagingMailboxPublicData latestStoredMmk = 9;
3110
+ }
3111
+
3112
+ message MandrakeValidateAndDecryptSelfMmkResult {
3113
+ oneof result {
3114
+ MandrakeValidateAndDecryptSelfMmkSuccess success = 1;
3115
+ string errorMessage = 2;
3116
+ }
3117
+ }
3118
+
3119
+ message MandrakeValidateAndDecryptSelfMmkSuccess {
3120
+ required bytes mmkSeed = 1;
3121
+ required bytes mailboxHeadHash = 2;
3122
+ }
3123
+
3124
+ message MandrakeValidateNewMmkFromDetachedDeviceInput {
3125
+ required MmkFromDetachedDevice mmkFromDevice = 1;
3126
+ required bytes signature = 2;
3127
+ required MessagingMailboxPublicData prevMmk = 3;
3128
+ }
3129
+
3130
+ message MandrakeValidateNewMmkFromMailboxInput {
3131
+ required MessagingMailboxPublicData newMmk = 1;
3132
+ required bytes signature = 2;
3133
+ optional MessagingMailboxPublicData prevMmk = 3;
3134
+ required EpochPublicData epochPublicData = 4;
3135
+ }
3136
+
3137
+ message MandrakeValidateNewMmkResult {
3138
+ oneof result {
3139
+ bool valid = 1;
3140
+ string errorMessage = 2;
3141
+ }
3142
+ }
3143
+
2552
3144
  message MediaData {
2553
3145
  optional string localPath = 1;
2554
3146
  }
@@ -2621,11 +3213,31 @@ enum MediaVisibility {
2621
3213
  OFF = 1;
2622
3214
  ON = 2;
2623
3215
  }
3216
+ message MekBundle {
3217
+ required bytes key = 1;
3218
+ required bytes mekId = 2;
3219
+ required bytes rosterHash = 3;
3220
+ }
3221
+
2624
3222
  message MemberLabel {
2625
3223
  optional string label = 1;
2626
3224
  optional int64 labelTimestamp = 2;
2627
3225
  }
2628
3226
 
3227
+ message Mention {
3228
+ optional MENTION_MENTION_TYPE mentionType = 1;
3229
+ optional string mentionedJid = 2;
3230
+ optional uint32 offset = 3;
3231
+ optional uint32 length = 4;
3232
+ }
3233
+
3234
+ message MerkleMembershipProof {
3235
+ required bytes proof = 1;
3236
+ required bytes root = 2;
3237
+ required uint64 leafIndex = 3;
3238
+ required uint64 totalLeaves = 4;
3239
+ }
3240
+
2629
3241
  message Message {
2630
3242
  optional string conversation = 1;
2631
3243
  optional SenderKeyDistributionMessage senderKeyDistributionMessage = 2;
@@ -3665,6 +4277,17 @@ message Message {
3665
4277
  optional string artworkUri = 3;
3666
4278
  optional int32 style = 4;
3667
4279
  optional ContextInfo contextInfo = 5;
4280
+ optional Lyrics lyrics = 6;
4281
+ message Lyrics {
4282
+ repeated Line lines = 1;
4283
+ message Line {
4284
+ optional int64 startTimeInMs = 1;
4285
+ optional int64 endTimeInMs = 2;
4286
+ optional string text = 3;
4287
+ }
4288
+
4289
+ }
4290
+
3668
4291
  enum MusicMessageStyle {
3669
4292
  UNKNOWN = 0;
3670
4293
  VINYL = 1;
@@ -4694,6 +5317,196 @@ message MessageSecretMessage {
4694
5317
  optional bytes encPayload = 3;
4695
5318
  }
4696
5319
 
5320
+ message MessageText {
5321
+ optional string text = 1;
5322
+ repeated string mentionedJid = 2;
5323
+ repeated Command commands = 3;
5324
+ repeated Mention mentions = 4;
5325
+ }
5326
+
5327
+ message MessagingMailboxPublicData {
5328
+ required bytes epochHead = 1;
5329
+ required bytes deviceRosterHash = 2;
5330
+ required uint64 sequenceNumber = 3;
5331
+ required bytes sigPk = 4;
5332
+ required bytes encPk = 5;
5333
+ required bytes authPk = 6;
5334
+ }
5335
+
5336
+ message MinosClientConfig {
5337
+ required int32 preferredMessageEncryptionVersion = 1;
5338
+ required int32 preferredMekEncryptionVersion = 2;
5339
+ }
5340
+
5341
+ message MinosCommand {
5342
+ oneof commandInput {
5343
+ MinosEncryptAndSignMessageInput encryptAndSignMessage = 1;
5344
+ MinosDecryptAndVerifyMessageInput decryptAndVerifyMessage = 2;
5345
+ GenerateMekInput generateMek = 3;
5346
+ GenerateMekRosterHashInput generateMekRosterHash = 4;
5347
+ EncryptMekForDistributionInput encryptMekForDistribution = 5;
5348
+ DecryptMekForDistributionInput decryptMekForDistribution = 6;
5349
+ EncryptMeksForDistributionFromTransportSenderInput encryptMeksForDistributionFromTransportSender = 7;
5350
+ DecryptMekForDistributionFromTransportSenderInput decryptMekForDistributionFromTransportSender = 8;
5351
+ WrapTransportSigningPublicKeyInput wrapTransportSigningPublicKey = 9;
5352
+ WrapTransportSigningSecretKeyInput wrapTransportSigningSecretKey = 10;
5353
+ DeriveMailboxSigningKeypairInput deriveMailboxSigningKeypair = 11;
5354
+ DeriveMailboxEncryptionKeypairInput deriveMailboxEncryptionKeypair = 12;
5355
+ DeriveMailboxAuthKeypairInput deriveMailboxAuthKeypair = 13;
5356
+ DeriveAttachmentAccessTokenSecretInput deriveAttachmentAccessTokenSecret = 14;
5357
+ DeriveAttachmentPrimaryKeySecretInput deriveAttachmentPrimaryKeySecret = 15;
5358
+ MinosOpenInitialEpochInput minosOpenInitialEpoch = 16;
5359
+ MinosOpenEpochInput minosOpenEpoch = 17;
5360
+ MinosValidateEpochInput minosValidateEpoch = 18;
5361
+ MinosVerifySingleEpochInput minosVerifySingleEpoch = 19;
5362
+ MinosThreadIdFromOneToOneThreadInput minosThreadIdFromOneToOneThread = 20;
5363
+ MinosThreadIdFromActThreadIdInput minosThreadIdFromActThreadId = 21;
5364
+ MandrakeOpenEpochInput mandrakeOpenEpoch = 22;
5365
+ MandrakeEncryptMekInput mandrakeEncryptMek = 23;
5366
+ MandrakeDecryptMekInput mandrakeDecryptMek = 24;
5367
+ MandrakeOpenInitialEpochInput mandrakeOpenInitialEpoch = 25;
5368
+ MandrakeValidateNewMmkFromMailboxInput mandrakeValidateNewMmkFromMailbox = 27;
5369
+ MandrakeValidateNewMmkFromDetachedDeviceInput mandrakeValidateNewMmkFromDetachedDevice = 28;
5370
+ DeriveMessagingMailboxKeypairsInput deriveMessagingMailboxKeypairs = 29;
5371
+ DecryptSelfMmkDistributionInput decryptSelfMmkDistribution = 30;
5372
+ MandrakeValidateAndDecryptSelfMmkInput mandrakeValidateAndDecryptSelfMmk = 31;
5373
+ MandrakeCreateMmkInput mandrakeCreateMmk = 32;
5374
+ }
5375
+ }
5376
+
5377
+ message MinosDecryptAndVerifyMessageInput {
5378
+ required bytes transportSigningPk = 1;
5379
+ required bytes mek = 2;
5380
+ required bytes encryptedMessageCiphertext = 3;
5381
+ required bytes encryptedMessageSignature = 4;
5382
+ required MinosMessageMetadata metadata = 5;
5383
+ optional int32 messageEncryptionVersion = 6;
5384
+ optional MinosClientConfig conf = 7;
5385
+ }
5386
+
5387
+ message MinosDecryptAndVerifyMessageResult {
5388
+ oneof result {
5389
+ MinosDecryptAndVerifyMessageSuccess success = 1;
5390
+ string errorMessage = 2;
5391
+ }
5392
+ }
5393
+
5394
+ message MinosDecryptAndVerifyMessageSuccess {
5395
+ required bytes plaintext = 1;
5396
+ }
5397
+
5398
+ message MinosEncryptAndSignMessageInput {
5399
+ required bytes transportSigningSk = 1;
5400
+ required bytes mek = 2;
5401
+ required bytes plaintext = 3;
5402
+ required MinosMessageMetadata metadata = 4;
5403
+ optional bytes transportSigningPk = 5;
5404
+ optional MinosClientConfig conf = 6;
5405
+ }
5406
+
5407
+ message MinosEncryptAndSignMessageResult {
5408
+ required bytes ciphertext = 1;
5409
+ required bytes signature = 2;
5410
+ required int32 version = 3;
5411
+ }
5412
+
5413
+ message MinosMessageMetadata {
5414
+ required bytes mekId = 1;
5415
+ required uint64 timestamp = 2;
5416
+ required string messageId = 3;
5417
+ required bytes threadId = 4;
5418
+ }
5419
+
5420
+ message MinosOpenEpochInput {
5421
+ required string userFbid = 1;
5422
+ required uint64 epochNumber = 2;
5423
+ required bytes exportRootKey = 3;
5424
+ required bytes previousExportRootKey = 4;
5425
+ required uint64 previousEpochNumber = 5;
5426
+ required bytes previousEpochHead = 6;
5427
+ }
5428
+
5429
+ message MinosOpenEpochResult {
5430
+ required MinosSignedEpoch minosSignedEpoch = 1;
5431
+ }
5432
+
5433
+ message MinosOpenInitialEpochInput {
5434
+ required string userFbid = 1;
5435
+ required uint64 epochNumber = 2;
5436
+ required bytes exportRootKey = 3;
5437
+ }
5438
+
5439
+ message MinosOpenInitialEpochResult {
5440
+ required MinosSignedEpoch minosSignedEpoch = 1;
5441
+ }
5442
+
5443
+ message MinosSignedEpoch {
5444
+ required EpochPublicData epochPublicData = 1;
5445
+ required EpochSignatures signatures = 2;
5446
+ required bytes epochHead = 3;
5447
+ }
5448
+
5449
+ message MinosThreadIdFromActThreadIdInput {
5450
+ required string actThreadId = 1;
5451
+ }
5452
+
5453
+ message MinosThreadIdFromActThreadIdResult {
5454
+ required bytes threadId = 1;
5455
+ }
5456
+
5457
+ message MinosThreadIdFromOneToOneThreadInput {
5458
+ required string actThreadId = 1;
5459
+ required string selfFbid = 2;
5460
+ }
5461
+
5462
+ message MinosThreadIdFromOneToOneThreadResult {
5463
+ required bytes threadId = 1;
5464
+ }
5465
+
5466
+ message MinosValidateEpochInput {
5467
+ required EpochPublicData epochPublicData = 1;
5468
+ required EpochPublicData previousEpochPublicData = 2;
5469
+ required EpochSignatures signatures = 3;
5470
+ }
5471
+
5472
+ message MinosValidateEpochResult {
5473
+ oneof result {
5474
+ bool valid = 1;
5475
+ string errorMessage = 2;
5476
+ }
5477
+ }
5478
+
5479
+ message MinosVerifySingleEpochInput {
5480
+ required EpochPublicData epochPublicData = 1;
5481
+ required bytes signature = 2;
5482
+ }
5483
+
5484
+ message MinosVerifySingleEpochResult {
5485
+ required bool valid = 1;
5486
+ }
5487
+
5488
+ message MmkDistribution {
5489
+ repeated MmkDistributionToDetachedDevice toDetachedDevices = 1;
5490
+ required MmkDistributionToMailbox toMailbox = 2;
5491
+ required uint64 version = 3;
5492
+ }
5493
+
5494
+ message MmkDistributionToDetachedDevice {
5495
+ required bytes encryptedMmk = 1;
5496
+ required bytes recipDeviceHash = 2;
5497
+ }
5498
+
5499
+ message MmkDistributionToMailbox {
5500
+ required bytes encryptedMmk = 1;
5501
+ required bytes recipMailboxHeadHash = 2;
5502
+ }
5503
+
5504
+ message MmkFromDetachedDevice {
5505
+ required MessagingMailboxPublicData mmk = 1;
5506
+ required DetachedDevicePublicData fromDetachedDevice = 2;
5507
+ required MerkleMembershipProof membershipProof = 3;
5508
+ }
5509
+
4697
5510
  message Money {
4698
5511
  optional int64 value = 1;
4699
5512
  optional uint32 offset = 2;
@@ -4958,6 +5771,15 @@ message NotificationSettings {
4958
5771
  optional string callVibrate = 6;
4959
5772
  }
4960
5773
 
5774
+ message OmittedConversationMetadata {
5775
+ optional string snapshotId = 1;
5776
+ optional uint64 snapshotTimestampMs = 2;
5777
+ optional uint32 batchIndex = 3;
5778
+ optional uint32 batchCount = 4;
5779
+ optional bool complete = 5;
5780
+ repeated Conversation conversations = 6;
5781
+ }
5782
+
4961
5783
  message PairingRequest {
4962
5784
  optional bytes companionPublicKey = 1;
4963
5785
  optional bytes companionIdentityKey = 2;
@@ -5272,11 +6094,6 @@ message RecordStructure {
5272
6094
  repeated SessionStructure previousSessions = 2;
5273
6095
  }
5274
6096
 
5275
- message RecoverableHistoryConversation {
5276
- optional string historyChatId = 1;
5277
- optional string accountLid = 2;
5278
- }
5279
-
5280
6097
  message Reportable {
5281
6098
  optional uint32 minVersion = 1;
5282
6099
  optional uint32 maxVersion = 2;
@@ -5417,6 +6234,12 @@ message SignalMessage {
5417
6234
  optional bytes ciphertext = 4;
5418
6235
  }
5419
6236
 
6237
+ message SignedMmkDistributionFromMailbox {
6238
+ required MmkDistribution mmkDistribution = 1;
6239
+ required bytes signature = 2;
6240
+ required MessagingMailboxPublicData fromMailbox = 3;
6241
+ }
6242
+
5420
6243
  message SignedPreKeyRecordStructure {
5421
6244
  optional uint32 id = 1;
5422
6245
  optional bytes publicKey = 2;
@@ -5552,6 +6375,11 @@ message StickerMetadata {
5552
6375
  optional bool isAvatarSticker = 14;
5553
6376
  }
5554
6377
 
6378
+ message SubProtocol {
6379
+ optional bytes payload = 1;
6380
+ optional int32 version = 2;
6381
+ }
6382
+
5555
6383
  message SyncActionData {
5556
6384
  optional bytes index = 1;
5557
6385
  optional SyncActionValue value = 2;
@@ -6994,3 +7822,19 @@ message WebNotificationsInfo {
6994
7822
  optional uint32 notifyMessageCount = 4;
6995
7823
  repeated WebMessageInfo notifyMessages = 5;
6996
7824
  }
7825
+
7826
+ message WrapTransportSigningPublicKeyInput {
7827
+ required bytes keyBytes = 1;
7828
+ }
7829
+
7830
+ message WrapTransportSigningPublicKeyResult {
7831
+ required bytes prefixedKey = 1;
7832
+ }
7833
+
7834
+ message WrapTransportSigningSecretKeyInput {
7835
+ required bytes keyBytes = 1;
7836
+ }
7837
+
7838
+ message WrapTransportSigningSecretKeyResult {
7839
+ required bytes prefixedKey = 1;
7840
+ }