@wowok/agent-mcp 2.3.7 → 2.3.9

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 (43) hide show
  1. package/dist/index.d.ts +1 -15838
  2. package/dist/index.js +40 -394
  3. package/dist/schema/call/base.d.ts +24 -24
  4. package/dist/schema/call/bridge-handler.d.ts +5 -0
  5. package/dist/schema/call/bridge-handler.js +234 -0
  6. package/dist/schema/call/bridge.d.ts +2212 -0
  7. package/dist/schema/call/bridge.js +408 -0
  8. package/dist/schema/call/handler.js +29 -15
  9. package/dist/schema/call/index.d.ts +1 -0
  10. package/dist/schema/call/index.js +1 -0
  11. package/dist/schema/call/service.js +1 -1
  12. package/dist/schema/index.d.ts +1 -0
  13. package/dist/schema/index.js +1 -0
  14. package/dist/schema/local/index.d.ts +70 -70
  15. package/dist/schema/local/index.js +2 -2
  16. package/dist/schema/messenger/index.d.ts +74 -74
  17. package/dist/schema/operations.d.ts +24302 -0
  18. package/dist/schema/operations.js +393 -0
  19. package/dist/schema-query/index.d.ts +3 -1
  20. package/dist/schema-query/index.js +63 -3
  21. package/dist/schemas/account_operation.output.json +1397 -0
  22. package/dist/schemas/bridge_operation.output.json +64 -0
  23. package/dist/schemas/bridge_operation.schema.json +547 -0
  24. package/dist/schemas/guard2file.output.json +84 -0
  25. package/dist/schemas/index.json +33 -14
  26. package/dist/schemas/local_info_operation.output.json +70 -0
  27. package/dist/schemas/local_mark_operation.output.json +114 -0
  28. package/dist/schemas/machineNode2file.output.json +89 -0
  29. package/dist/schemas/messenger_operation.output.json +1068 -0
  30. package/dist/schemas/onchain_events.output.json +513 -0
  31. package/dist/schemas/onchain_operations.output.json +1766 -0
  32. package/dist/schemas/onchain_operations.schema.json +8324 -49
  33. package/dist/schemas/onchain_operations_service.schema.json +1 -1
  34. package/dist/schemas/onchain_table_data.output.json +1938 -0
  35. package/dist/schemas/onchain_table_data.schema.json +483 -22
  36. package/dist/schemas/query_toolkit.output.json +18 -0
  37. package/dist/schemas/query_toolkit.schema.json +454 -19
  38. package/dist/schemas/schema_query.output.json +42 -0
  39. package/dist/schemas/schema_query.schema.json +1 -0
  40. package/dist/schemas/wip_file.output.json +116 -0
  41. package/dist/schemas/wip_file.schema.json +163 -15
  42. package/dist/schemas/wowok_buildin_info.output.json +577 -0
  43. package/package.json +2 -2
@@ -0,0 +1,1068 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://wowok.net/schemas/messenger_operation.json",
4
+ "title": "Messenger Operations",
5
+ "description": "WoWok encrypted messenger operations",
6
+ "$ref": "#/definitions/messenger_operation",
7
+ "definitions": {
8
+ "messenger_operation": {
9
+ "type": "object",
10
+ "properties": {
11
+ "result": {
12
+ "anyOf": [
13
+ {
14
+ "type": "object",
15
+ "properties": {
16
+ "operation": {
17
+ "type": "string",
18
+ "const": "watch_conversations"
19
+ },
20
+ "result": {
21
+ "type": "array",
22
+ "items": {
23
+ "type": "object",
24
+ "properties": {
25
+ "peerAddress": {
26
+ "type": "string",
27
+ "description": "Peer address"
28
+ },
29
+ "lastMessageAt": {
30
+ "type": "number",
31
+ "description": "Last message time"
32
+ },
33
+ "messageCount": {
34
+ "type": "number",
35
+ "description": "Total message count"
36
+ },
37
+ "unreadCount": {
38
+ "type": "number",
39
+ "description": "Unread message count - count of received messages that have not been viewed (viewedAt is undefined)"
40
+ },
41
+ "lastMessagePreview": {
42
+ "type": "string",
43
+ "description": "Last message preview text"
44
+ },
45
+ "previewMessages": {
46
+ "type": "array",
47
+ "items": {
48
+ "type": "object",
49
+ "properties": {
50
+ "messageId": {
51
+ "type": "string",
52
+ "description": "Message ID"
53
+ },
54
+ "fromAddress": {
55
+ "type": "string",
56
+ "description": "Sender address"
57
+ },
58
+ "toAddress": {
59
+ "type": "string",
60
+ "description": "Recipient address"
61
+ },
62
+ "plaintextHash": {
63
+ "type": "string",
64
+ "description": "Plaintext hash"
65
+ },
66
+ "plaintext": {
67
+ "type": "string",
68
+ "description": "Decrypted plaintext (optional)"
69
+ },
70
+ "guardAddress": {
71
+ "type": "string",
72
+ "description": "Guard address"
73
+ },
74
+ "passportAddress": {
75
+ "type": "string",
76
+ "description": "Passport address"
77
+ },
78
+ "lastReceivedLeafIndex": {
79
+ "type": "number",
80
+ "description": "Last received leaf index"
81
+ },
82
+ "direction": {
83
+ "type": "string",
84
+ "enum": [
85
+ "sent",
86
+ "received"
87
+ ],
88
+ "description": "Message direction"
89
+ },
90
+ "status": {
91
+ "type": "string",
92
+ "enum": [
93
+ "pending",
94
+ "confirmed",
95
+ "read",
96
+ "failed",
97
+ "rejected",
98
+ "decrypted",
99
+ "decrypt_failed"
100
+ ],
101
+ "description": "Message status"
102
+ },
103
+ "msgType": {
104
+ "type": "number",
105
+ "enum": [
106
+ 1,
107
+ 3
108
+ ],
109
+ "description": "Message type"
110
+ },
111
+ "leafIndex": {
112
+ "type": "number",
113
+ "description": "Leaf index"
114
+ },
115
+ "prevRoot": {
116
+ "type": "string",
117
+ "description": "Previous Merkle Root"
118
+ },
119
+ "newRoot": {
120
+ "type": "string",
121
+ "description": "Current Merkle Root"
122
+ },
123
+ "serverSignature": {
124
+ "type": "string",
125
+ "description": "Server signature"
126
+ },
127
+ "serverTimestamp": {
128
+ "type": "number",
129
+ "description": "Server confirmation timestamp"
130
+ },
131
+ "serverPublicKey": {
132
+ "type": "string",
133
+ "description": "Server public key"
134
+ },
135
+ "arkConfirmed": {
136
+ "type": "object",
137
+ "properties": {
138
+ "recipient": {
139
+ "type": "string",
140
+ "description": "Recipient address"
141
+ },
142
+ "recipientPublicKey": {
143
+ "type": "string",
144
+ "description": "Recipient public key"
145
+ },
146
+ "signature": {
147
+ "type": "string",
148
+ "description": "Recipient signature"
149
+ },
150
+ "timestamp": {
151
+ "type": "number",
152
+ "description": "ARK confirmation time"
153
+ }
154
+ },
155
+ "required": [
156
+ "recipient",
157
+ "recipientPublicKey",
158
+ "signature",
159
+ "timestamp"
160
+ ],
161
+ "additionalProperties": false,
162
+ "description": "ARK confirmation"
163
+ },
164
+ "createdAt": {
165
+ "type": "number",
166
+ "description": "Message creation time (client)"
167
+ },
168
+ "receivedAt": {
169
+ "type": "number",
170
+ "description": "Local reception time"
171
+ },
172
+ "zipMetadata": {
173
+ "type": "object",
174
+ "properties": {
175
+ "fileName": {
176
+ "type": "string",
177
+ "description": "ZIP filename"
178
+ },
179
+ "fileSize": {
180
+ "type": "number",
181
+ "description": "File size in bytes"
182
+ },
183
+ "fileHash": {
184
+ "type": "string",
185
+ "description": "File SHA256 hash"
186
+ },
187
+ "contentType": {
188
+ "type": "string",
189
+ "enum": [
190
+ "text",
191
+ "zip",
192
+ "wts",
193
+ "wip"
194
+ ],
195
+ "description": "Content type"
196
+ },
197
+ "localCachePath": {
198
+ "type": "string",
199
+ "description": "Local cache path"
200
+ },
201
+ "downloadedAt": {
202
+ "type": "number",
203
+ "description": "Download timestamp"
204
+ }
205
+ },
206
+ "required": [
207
+ "fileName",
208
+ "fileSize",
209
+ "fileHash",
210
+ "contentType"
211
+ ],
212
+ "additionalProperties": false,
213
+ "description": "ZIP file metadata"
214
+ },
215
+ "proof": {
216
+ "type": "string",
217
+ "description": "On-chain proof object address"
218
+ },
219
+ "decryptError": {
220
+ "type": "string",
221
+ "description": "Decryption failure reason"
222
+ },
223
+ "decryptAttempts": {
224
+ "type": "number",
225
+ "description": "Number of decryption attempts"
226
+ },
227
+ "lastDecryptAttemptAt": {
228
+ "type": "number",
229
+ "description": "Last decryption attempt timestamp"
230
+ },
231
+ "viewedAt": {
232
+ "type": "number",
233
+ "description": "Timestamp when the current user viewed this message (local storage). If present, indicates the message has been viewed by the user. Only applicable to received messages (direction === 'received')"
234
+ }
235
+ },
236
+ "required": [
237
+ "messageId",
238
+ "fromAddress",
239
+ "toAddress",
240
+ "plaintextHash",
241
+ "direction",
242
+ "status",
243
+ "msgType",
244
+ "createdAt"
245
+ ],
246
+ "additionalProperties": false,
247
+ "description": "Message object"
248
+ },
249
+ "description": "Preview messages for this conversation (default 2 messages, sorted by time descending)"
250
+ }
251
+ },
252
+ "required": [
253
+ "peerAddress",
254
+ "lastMessageAt",
255
+ "messageCount",
256
+ "unreadCount"
257
+ ],
258
+ "additionalProperties": false,
259
+ "description": "Conversation info with unread count and preview messages"
260
+ },
261
+ "description": "List of conversations"
262
+ }
263
+ },
264
+ "required": [
265
+ "operation",
266
+ "result"
267
+ ],
268
+ "additionalProperties": false
269
+ },
270
+ {
271
+ "type": "object",
272
+ "properties": {
273
+ "operation": {
274
+ "type": "string",
275
+ "const": "send_message"
276
+ },
277
+ "result": {
278
+ "type": "object",
279
+ "properties": {
280
+ "messageId": {
281
+ "type": "string",
282
+ "description": "Message ID"
283
+ },
284
+ "status": {
285
+ "type": "string",
286
+ "enum": [
287
+ "pending",
288
+ "confirmed",
289
+ "read",
290
+ "failed",
291
+ "rejected",
292
+ "decrypted",
293
+ "decrypt_failed"
294
+ ],
295
+ "description": "Message status"
296
+ },
297
+ "merkleData": {
298
+ "type": "object",
299
+ "properties": {
300
+ "leafIndex": {
301
+ "type": "number",
302
+ "description": "Leaf index"
303
+ },
304
+ "prevRoot": {
305
+ "type": "string",
306
+ "description": "Previous Merkle Root"
307
+ },
308
+ "newRoot": {
309
+ "type": "string",
310
+ "description": "Current Merkle Root"
311
+ },
312
+ "serverSignature": {
313
+ "type": "string",
314
+ "description": "Server signature"
315
+ },
316
+ "serverTimestamp": {
317
+ "type": "number",
318
+ "description": "Server confirmation timestamp"
319
+ },
320
+ "serverPublicKey": {
321
+ "type": "string",
322
+ "description": "Server public key"
323
+ }
324
+ },
325
+ "required": [
326
+ "leafIndex",
327
+ "prevRoot",
328
+ "newRoot",
329
+ "serverSignature",
330
+ "serverTimestamp",
331
+ "serverPublicKey"
332
+ ],
333
+ "additionalProperties": false,
334
+ "description": "Merkle Tree proof data"
335
+ },
336
+ "guardList": {
337
+ "type": "array",
338
+ "items": {
339
+ "type": "string"
340
+ },
341
+ "description": "Guard list (only returned on error)"
342
+ },
343
+ "lastReceivedLeafIndex": {
344
+ "type": "number",
345
+ "description": "Last received leaf index (for message confirmation)"
346
+ }
347
+ },
348
+ "required": [
349
+ "messageId",
350
+ "status"
351
+ ],
352
+ "additionalProperties": false,
353
+ "description": "Send message result"
354
+ }
355
+ },
356
+ "required": [
357
+ "operation",
358
+ "result"
359
+ ],
360
+ "additionalProperties": false
361
+ },
362
+ {
363
+ "type": "object",
364
+ "properties": {
365
+ "operation": {
366
+ "type": "string",
367
+ "const": "send_file"
368
+ },
369
+ "result": {
370
+ "type": "object",
371
+ "properties": {
372
+ "messageId": {
373
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/1/properties/result/properties/messageId"
374
+ },
375
+ "status": {
376
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/1/properties/result/properties/status"
377
+ },
378
+ "merkleData": {
379
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/1/properties/result/properties/merkleData"
380
+ },
381
+ "guardList": {
382
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/1/properties/result/properties/guardList"
383
+ },
384
+ "lastReceivedLeafIndex": {
385
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/1/properties/result/properties/lastReceivedLeafIndex"
386
+ }
387
+ },
388
+ "required": [
389
+ "messageId",
390
+ "status"
391
+ ],
392
+ "additionalProperties": false,
393
+ "description": "Send file result"
394
+ }
395
+ },
396
+ "required": [
397
+ "operation",
398
+ "result"
399
+ ],
400
+ "additionalProperties": false
401
+ },
402
+ {
403
+ "type": "object",
404
+ "properties": {
405
+ "operation": {
406
+ "type": "string",
407
+ "const": "watch_messages"
408
+ },
409
+ "result": {
410
+ "type": "array",
411
+ "items": {
412
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/0/properties/result/items/properties/previewMessages/items"
413
+ },
414
+ "description": "List of messages"
415
+ }
416
+ },
417
+ "required": [
418
+ "operation",
419
+ "result"
420
+ ],
421
+ "additionalProperties": false
422
+ },
423
+ {
424
+ "type": "object",
425
+ "properties": {
426
+ "operation": {
427
+ "type": "string",
428
+ "const": "extract_zip_messages"
429
+ },
430
+ "result": {
431
+ "type": "array",
432
+ "items": {
433
+ "type": "string"
434
+ },
435
+ "description": "Extracted file paths"
436
+ }
437
+ },
438
+ "required": [
439
+ "operation",
440
+ "result"
441
+ ],
442
+ "additionalProperties": false
443
+ },
444
+ {
445
+ "type": "object",
446
+ "properties": {
447
+ "operation": {
448
+ "type": "string",
449
+ "const": "generate_wts"
450
+ },
451
+ "result": {
452
+ "type": "object",
453
+ "properties": {
454
+ "files": {
455
+ "type": "array",
456
+ "items": {
457
+ "type": "string"
458
+ },
459
+ "description": "Generated WTS file paths"
460
+ },
461
+ "totalMessageCount": {
462
+ "type": "number",
463
+ "description": "Total message count"
464
+ },
465
+ "timeRange": {
466
+ "type": "object",
467
+ "properties": {
468
+ "start": {
469
+ "type": "number",
470
+ "description": "Start time"
471
+ },
472
+ "end": {
473
+ "type": "number",
474
+ "description": "End time"
475
+ }
476
+ },
477
+ "required": [
478
+ "start",
479
+ "end"
480
+ ],
481
+ "additionalProperties": false,
482
+ "description": "Time range"
483
+ }
484
+ },
485
+ "required": [
486
+ "files",
487
+ "totalMessageCount",
488
+ "timeRange"
489
+ ],
490
+ "additionalProperties": false,
491
+ "description": "Generate WTS result"
492
+ }
493
+ },
494
+ "required": [
495
+ "operation",
496
+ "result"
497
+ ],
498
+ "additionalProperties": false
499
+ },
500
+ {
501
+ "type": "object",
502
+ "properties": {
503
+ "operation": {
504
+ "type": "string",
505
+ "const": "verify_wts"
506
+ },
507
+ "result": {
508
+ "type": "object",
509
+ "properties": {
510
+ "valid": {
511
+ "type": "boolean",
512
+ "description": "Whether verification succeeded"
513
+ },
514
+ "error": {
515
+ "type": "string",
516
+ "description": "Error message if verification failed"
517
+ },
518
+ "hashValid": {
519
+ "type": "boolean",
520
+ "description": "Whether hash validation passed"
521
+ },
522
+ "hasSignature": {
523
+ "type": "boolean",
524
+ "description": "Whether WTS has signatures"
525
+ },
526
+ "signatureValid": {
527
+ "type": "boolean",
528
+ "description": "Whether signature validation passed"
529
+ },
530
+ "signatures": {
531
+ "type": "array",
532
+ "items": {
533
+ "type": "object",
534
+ "properties": {
535
+ "publicKey": {
536
+ "type": "string",
537
+ "description": "Signer public key"
538
+ },
539
+ "address": {
540
+ "type": "string",
541
+ "description": "Signer address"
542
+ },
543
+ "valid": {
544
+ "type": "boolean",
545
+ "description": "Whether signature is valid"
546
+ }
547
+ },
548
+ "required": [
549
+ "publicKey",
550
+ "valid"
551
+ ],
552
+ "additionalProperties": false,
553
+ "description": "WTS signature verification details"
554
+ },
555
+ "description": "Signature verification details"
556
+ }
557
+ },
558
+ "required": [
559
+ "valid"
560
+ ],
561
+ "additionalProperties": false,
562
+ "description": "WTS verification result"
563
+ }
564
+ },
565
+ "required": [
566
+ "operation",
567
+ "result"
568
+ ],
569
+ "additionalProperties": false
570
+ },
571
+ {
572
+ "type": "object",
573
+ "properties": {
574
+ "operation": {
575
+ "type": "string",
576
+ "const": "sign_wts"
577
+ },
578
+ "result": {
579
+ "type": "string",
580
+ "description": "Signed WTS file path"
581
+ }
582
+ },
583
+ "required": [
584
+ "operation",
585
+ "result"
586
+ ],
587
+ "additionalProperties": false
588
+ },
589
+ {
590
+ "type": "object",
591
+ "properties": {
592
+ "operation": {
593
+ "type": "string",
594
+ "const": "wts2html"
595
+ },
596
+ "result": {
597
+ "anyOf": [
598
+ {
599
+ "type": "string"
600
+ },
601
+ {
602
+ "type": "array",
603
+ "items": {
604
+ "type": "string"
605
+ }
606
+ }
607
+ ],
608
+ "description": "HTML string or file path(s)"
609
+ }
610
+ },
611
+ "required": [
612
+ "operation",
613
+ "result"
614
+ ],
615
+ "additionalProperties": false
616
+ },
617
+ {
618
+ "type": "object",
619
+ "properties": {
620
+ "operation": {
621
+ "type": "string",
622
+ "const": "proof_message"
623
+ },
624
+ "result": {
625
+ "type": "object",
626
+ "properties": {
627
+ "proofAddress": {
628
+ "type": "string",
629
+ "description": "Proof object address on blockchain"
630
+ }
631
+ },
632
+ "required": [
633
+ "proofAddress"
634
+ ],
635
+ "additionalProperties": false,
636
+ "description": "Proof message result"
637
+ }
638
+ },
639
+ "required": [
640
+ "operation",
641
+ "result"
642
+ ],
643
+ "additionalProperties": false
644
+ },
645
+ {
646
+ "type": "object",
647
+ "properties": {
648
+ "operation": {
649
+ "type": "string",
650
+ "const": "blacklist"
651
+ },
652
+ "op": {
653
+ "type": "string",
654
+ "enum": [
655
+ "add",
656
+ "remove",
657
+ "clear",
658
+ "get",
659
+ "exist"
660
+ ],
661
+ "description": "Operation type"
662
+ },
663
+ "result": {
664
+ "anyOf": [
665
+ {
666
+ "type": "object",
667
+ "properties": {
668
+ "success": {
669
+ "type": "boolean",
670
+ "description": "Whether operation succeeded"
671
+ },
672
+ "operation": {
673
+ "type": "string",
674
+ "description": "Operation performed"
675
+ },
676
+ "modifiedCount": {
677
+ "type": "number",
678
+ "description": "Number of items modified"
679
+ },
680
+ "currentCount": {
681
+ "type": "number",
682
+ "description": "Current list size"
683
+ },
684
+ "maxCount": {
685
+ "type": "number",
686
+ "description": "Maximum list size"
687
+ },
688
+ "invalidAddresses": {
689
+ "anyOf": [
690
+ {
691
+ "anyOf": [
692
+ {
693
+ "not": {}
694
+ },
695
+ {
696
+ "type": "array",
697
+ "items": {
698
+ "type": "string"
699
+ }
700
+ }
701
+ ]
702
+ },
703
+ {
704
+ "type": "null"
705
+ }
706
+ ],
707
+ "description": "Invalid addresses"
708
+ },
709
+ "existResults": {
710
+ "anyOf": [
711
+ {
712
+ "anyOf": [
713
+ {
714
+ "not": {}
715
+ },
716
+ {
717
+ "type": "array",
718
+ "items": {
719
+ "type": "object",
720
+ "properties": {
721
+ "address": {
722
+ "type": "string",
723
+ "description": "Address"
724
+ },
725
+ "exists": {
726
+ "type": "boolean",
727
+ "description": "Whether address exists in list"
728
+ }
729
+ },
730
+ "required": [
731
+ "address",
732
+ "exists"
733
+ ],
734
+ "additionalProperties": false,
735
+ "description": "Address existence check result"
736
+ }
737
+ }
738
+ ]
739
+ },
740
+ {
741
+ "type": "null"
742
+ }
743
+ ],
744
+ "description": "Existence check results"
745
+ },
746
+ "message": {
747
+ "anyOf": [
748
+ {
749
+ "anyOf": [
750
+ {
751
+ "not": {}
752
+ },
753
+ {
754
+ "type": "string"
755
+ }
756
+ ]
757
+ },
758
+ {
759
+ "type": "null"
760
+ }
761
+ ],
762
+ "description": "Operation message"
763
+ },
764
+ "currentList": {
765
+ "anyOf": [
766
+ {
767
+ "anyOf": [
768
+ {
769
+ "not": {}
770
+ },
771
+ {
772
+ "type": "array",
773
+ "items": {
774
+ "type": "string"
775
+ }
776
+ }
777
+ ]
778
+ },
779
+ {
780
+ "type": "null"
781
+ }
782
+ ],
783
+ "description": "Current list content"
784
+ },
785
+ "currentGuardList": {
786
+ "anyOf": [
787
+ {
788
+ "anyOf": [
789
+ {
790
+ "not": {}
791
+ },
792
+ {
793
+ "type": "array",
794
+ "items": {
795
+ "type": "object",
796
+ "properties": {
797
+ "guardAddress": {
798
+ "type": "string",
799
+ "description": "Guard address"
800
+ },
801
+ "passportValiditySeconds": {
802
+ "type": "number",
803
+ "description": "Passport validity in seconds"
804
+ }
805
+ },
806
+ "required": [
807
+ "guardAddress",
808
+ "passportValiditySeconds"
809
+ ],
810
+ "additionalProperties": false,
811
+ "description": "Guard list item"
812
+ }
813
+ }
814
+ ]
815
+ },
816
+ {
817
+ "type": "null"
818
+ }
819
+ ],
820
+ "description": "Current guard list content"
821
+ }
822
+ },
823
+ "required": [
824
+ "success",
825
+ "operation",
826
+ "modifiedCount",
827
+ "currentCount",
828
+ "maxCount"
829
+ ],
830
+ "additionalProperties": false,
831
+ "description": "List operation response"
832
+ },
833
+ {
834
+ "type": "array",
835
+ "items": {
836
+ "type": "string"
837
+ }
838
+ }
839
+ ],
840
+ "description": "Blacklist operation result"
841
+ }
842
+ },
843
+ "required": [
844
+ "operation",
845
+ "op",
846
+ "result"
847
+ ],
848
+ "additionalProperties": false
849
+ },
850
+ {
851
+ "type": "object",
852
+ "properties": {
853
+ "operation": {
854
+ "type": "string",
855
+ "const": "friendslist"
856
+ },
857
+ "op": {
858
+ "type": "string",
859
+ "enum": [
860
+ "add",
861
+ "remove",
862
+ "clear",
863
+ "get",
864
+ "exist"
865
+ ],
866
+ "description": "Operation type"
867
+ },
868
+ "result": {
869
+ "anyOf": [
870
+ {
871
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0"
872
+ },
873
+ {
874
+ "type": "array",
875
+ "items": {
876
+ "type": "string"
877
+ }
878
+ }
879
+ ],
880
+ "description": "Friends list operation result"
881
+ }
882
+ },
883
+ "required": [
884
+ "operation",
885
+ "op",
886
+ "result"
887
+ ],
888
+ "additionalProperties": false
889
+ },
890
+ {
891
+ "type": "object",
892
+ "properties": {
893
+ "operation": {
894
+ "type": "string",
895
+ "const": "guardlist"
896
+ },
897
+ "op": {
898
+ "type": "string",
899
+ "enum": [
900
+ "add",
901
+ "remove",
902
+ "get"
903
+ ],
904
+ "description": "Operation type"
905
+ },
906
+ "result": {
907
+ "type": "object",
908
+ "properties": {
909
+ "success": {
910
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/success"
911
+ },
912
+ "operation": {
913
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/operation"
914
+ },
915
+ "modifiedCount": {
916
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/modifiedCount"
917
+ },
918
+ "currentCount": {
919
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/currentCount"
920
+ },
921
+ "maxCount": {
922
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/maxCount"
923
+ },
924
+ "invalidAddresses": {
925
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/invalidAddresses"
926
+ },
927
+ "existResults": {
928
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/existResults"
929
+ },
930
+ "message": {
931
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/message"
932
+ },
933
+ "currentList": {
934
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/currentList"
935
+ },
936
+ "currentGuardList": {
937
+ "$ref": "#/definitions/messenger_operation/properties/result/anyOf/10/properties/result/anyOf/0/properties/currentGuardList"
938
+ }
939
+ },
940
+ "required": [
941
+ "success",
942
+ "operation",
943
+ "modifiedCount",
944
+ "currentCount",
945
+ "maxCount"
946
+ ],
947
+ "additionalProperties": false,
948
+ "description": "Guard list operation result"
949
+ }
950
+ },
951
+ "required": [
952
+ "operation",
953
+ "op",
954
+ "result"
955
+ ],
956
+ "additionalProperties": false
957
+ },
958
+ {
959
+ "type": "object",
960
+ "properties": {
961
+ "operation": {
962
+ "type": "string",
963
+ "const": "settings"
964
+ },
965
+ "op": {
966
+ "type": "string",
967
+ "enum": [
968
+ "get",
969
+ "set"
970
+ ],
971
+ "description": "Operation type"
972
+ },
973
+ "result": {
974
+ "anyOf": [
975
+ {
976
+ "type": "object",
977
+ "properties": {
978
+ "allowStrangerMessages": {
979
+ "type": "boolean",
980
+ "description": "Whether messages from strangers are allowed"
981
+ },
982
+ "maxInboxSize": {
983
+ "type": "number",
984
+ "description": "Current maximum inbox size"
985
+ },
986
+ "minUserInboxSize": {
987
+ "type": "number",
988
+ "description": "Server minimum allowed inbox size limit"
989
+ },
990
+ "maxUserInboxSize": {
991
+ "type": "number",
992
+ "description": "Server maximum allowed inbox size limit"
993
+ },
994
+ "defaultAllowStrangerMessages": {
995
+ "type": "boolean",
996
+ "description": "Server default setting for allowing stranger messages"
997
+ }
998
+ },
999
+ "required": [
1000
+ "minUserInboxSize",
1001
+ "maxUserInboxSize",
1002
+ "defaultAllowStrangerMessages"
1003
+ ],
1004
+ "additionalProperties": false,
1005
+ "description": "Get settings response"
1006
+ },
1007
+ {
1008
+ "type": "boolean"
1009
+ }
1010
+ ],
1011
+ "description": "Settings operation result - GetSettingsResponse for 'get' operation, boolean for 'set' operation"
1012
+ }
1013
+ },
1014
+ "required": [
1015
+ "operation",
1016
+ "op",
1017
+ "result"
1018
+ ],
1019
+ "additionalProperties": false
1020
+ },
1021
+ {
1022
+ "type": "object",
1023
+ "properties": {
1024
+ "operation": {
1025
+ "type": "string",
1026
+ "const": "mark_messages_as_viewed"
1027
+ },
1028
+ "result": {
1029
+ "type": "number",
1030
+ "description": "Number of messages successfully marked as viewed. Only messages that were previously unviewed are counted"
1031
+ }
1032
+ },
1033
+ "required": [
1034
+ "operation",
1035
+ "result"
1036
+ ],
1037
+ "additionalProperties": false
1038
+ },
1039
+ {
1040
+ "type": "object",
1041
+ "properties": {
1042
+ "operation": {
1043
+ "type": "string",
1044
+ "const": "mark_conversation_as_viewed"
1045
+ },
1046
+ "result": {
1047
+ "type": "number",
1048
+ "description": "Number of messages successfully marked as viewed in the conversation. Only received messages that were previously unviewed are counted"
1049
+ }
1050
+ },
1051
+ "required": [
1052
+ "operation",
1053
+ "result"
1054
+ ],
1055
+ "additionalProperties": false
1056
+ }
1057
+ ],
1058
+ "description": "Messenger operation result discriminated union"
1059
+ }
1060
+ },
1061
+ "required": [
1062
+ "result"
1063
+ ],
1064
+ "additionalProperties": false,
1065
+ "description": "Messenger operation output schema"
1066
+ }
1067
+ }
1068
+ }