@aifinpay/deployments 1.1.0

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 (48) hide show
  1. package/README.md +133 -0
  2. package/USAGE.md +534 -0
  3. package/dist/artifacts.d.ts +62 -0
  4. package/dist/artifacts.d.ts.map +1 -0
  5. package/dist/artifacts.js +210 -0
  6. package/dist/artifacts.js.map +1 -0
  7. package/dist/build.d.ts +2 -0
  8. package/dist/build.d.ts.map +1 -0
  9. package/dist/build.js +25 -0
  10. package/dist/build.js.map +1 -0
  11. package/dist/grabber.d.ts +42 -0
  12. package/dist/grabber.d.ts.map +1 -0
  13. package/dist/grabber.js +379 -0
  14. package/dist/grabber.js.map +1 -0
  15. package/dist/index.d.ts +8 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +6 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/registry.d.ts +147 -0
  20. package/dist/registry.d.ts.map +1 -0
  21. package/dist/registry.js +263 -0
  22. package/dist/registry.js.map +1 -0
  23. package/dist/types.d.ts +139 -0
  24. package/dist/types.d.ts.map +1 -0
  25. package/dist/types.js +14 -0
  26. package/dist/types.js.map +1 -0
  27. package/package.json +36 -0
  28. package/registry/abi/evm/B2BSplitterV14/B2BSplitterV14.json +1318 -0
  29. package/registry/abi/evm/TimelockWrapper/TimelockWrapper.json +277 -0
  30. package/registry/abi/tron/.gitkeep +0 -0
  31. package/registry/idl/aptos/.gitkeep +0 -0
  32. package/registry/idl/casper/.gitkeep +0 -0
  33. package/registry/idl/casper/aifinpay-casper-schema.json +108 -0
  34. package/registry/idl/solana/splitter-v14/splitter.devnet.json +1962 -0
  35. package/registry/idl/solana/splitter-v14/splitter.mainnet.json +1962 -0
  36. package/registry/splitter/INDEX.md +163 -0
  37. package/registry/splitter/casper/README.md +101 -0
  38. package/registry/splitter/casper/deployments.json +110 -0
  39. package/registry/splitter/evm/v1.1/README.md +32 -0
  40. package/registry/splitter/evm/v1.1/deployments.json +45 -0
  41. package/registry/splitter/evm/v1.2/README.md +47 -0
  42. package/registry/splitter/evm/v1.2/deployments.json +76 -0
  43. package/registry/splitter/evm/v1.3/README.md +78 -0
  44. package/registry/splitter/evm/v1.3/deployments.json +280 -0
  45. package/registry/splitter/evm/v1.4/README.md +75 -0
  46. package/registry/splitter/evm/v1.4/deployments.json +358 -0
  47. package/registry/splitter/solana/README.md +49 -0
  48. package/registry/splitter/solana/deployments.json +48 -0
@@ -0,0 +1,1962 @@
1
+ {
2
+ "address": "8dty5bD738Z9TzEkDu8vLSnhpJNWtEGMUEcYaKCUTY6y",
3
+ "metadata": {
4
+ "name": "splitter",
5
+ "version": "1.4.1",
6
+ "spec": "0.1.0",
7
+ "description": "AiFinPay Solana splitter v1.4 — signed, multi-route gross settlement"
8
+ },
9
+ "instructions": [
10
+ {
11
+ "name": "configure_route",
12
+ "discriminator": [
13
+ 43,
14
+ 191,
15
+ 221,
16
+ 37,
17
+ 219,
18
+ 56,
19
+ 2,
20
+ 255
21
+ ],
22
+ "accounts": [
23
+ {
24
+ "name": "config",
25
+ "writable": true,
26
+ "pda": {
27
+ "seeds": [
28
+ {
29
+ "kind": "const",
30
+ "value": [
31
+ 99,
32
+ 111,
33
+ 110,
34
+ 102,
35
+ 105,
36
+ 103
37
+ ]
38
+ }
39
+ ]
40
+ }
41
+ },
42
+ {
43
+ "name": "profiles",
44
+ "writable": true,
45
+ "pda": {
46
+ "seeds": [
47
+ {
48
+ "kind": "const",
49
+ "value": [
50
+ 112,
51
+ 114,
52
+ 111,
53
+ 102,
54
+ 105,
55
+ 108,
56
+ 101,
57
+ 115,
58
+ 45,
59
+ 105,
60
+ 110,
61
+ 100,
62
+ 101,
63
+ 120
64
+ ]
65
+ }
66
+ ]
67
+ }
68
+ },
69
+ {
70
+ "name": "admin",
71
+ "signer": true
72
+ }
73
+ ],
74
+ "args": [
75
+ {
76
+ "name": "route_id",
77
+ "type": {
78
+ "array": [
79
+ "u8",
80
+ 32
81
+ ]
82
+ }
83
+ },
84
+ {
85
+ "name": "treasury_bps",
86
+ "type": "u16"
87
+ },
88
+ {
89
+ "name": "ip_creator_bps",
90
+ "type": "u16"
91
+ },
92
+ {
93
+ "name": "route_treasury",
94
+ "type": "pubkey"
95
+ }
96
+ ]
97
+ },
98
+ {
99
+ "name": "disable_route",
100
+ "discriminator": [
101
+ 113,
102
+ 226,
103
+ 157,
104
+ 91,
105
+ 114,
106
+ 105,
107
+ 201,
108
+ 208
109
+ ],
110
+ "accounts": [
111
+ {
112
+ "name": "config",
113
+ "writable": true,
114
+ "pda": {
115
+ "seeds": [
116
+ {
117
+ "kind": "const",
118
+ "value": [
119
+ 99,
120
+ 111,
121
+ 110,
122
+ 102,
123
+ 105,
124
+ 103
125
+ ]
126
+ }
127
+ ]
128
+ }
129
+ },
130
+ {
131
+ "name": "profiles",
132
+ "writable": true,
133
+ "pda": {
134
+ "seeds": [
135
+ {
136
+ "kind": "const",
137
+ "value": [
138
+ 112,
139
+ 114,
140
+ 111,
141
+ 102,
142
+ 105,
143
+ 108,
144
+ 101,
145
+ 115,
146
+ 45,
147
+ 105,
148
+ 110,
149
+ 100,
150
+ 101,
151
+ 120
152
+ ]
153
+ }
154
+ ]
155
+ }
156
+ },
157
+ {
158
+ "name": "admin",
159
+ "signer": true
160
+ }
161
+ ],
162
+ "args": [
163
+ {
164
+ "name": "route_id",
165
+ "type": {
166
+ "array": [
167
+ "u8",
168
+ 32
169
+ ]
170
+ }
171
+ }
172
+ ]
173
+ },
174
+ {
175
+ "name": "enable_route",
176
+ "discriminator": [
177
+ 108,
178
+ 98,
179
+ 67,
180
+ 179,
181
+ 79,
182
+ 4,
183
+ 42,
184
+ 84
185
+ ],
186
+ "accounts": [
187
+ {
188
+ "name": "config",
189
+ "writable": true,
190
+ "pda": {
191
+ "seeds": [
192
+ {
193
+ "kind": "const",
194
+ "value": [
195
+ 99,
196
+ 111,
197
+ 110,
198
+ 102,
199
+ 105,
200
+ 103
201
+ ]
202
+ }
203
+ ]
204
+ }
205
+ },
206
+ {
207
+ "name": "profiles",
208
+ "writable": true,
209
+ "pda": {
210
+ "seeds": [
211
+ {
212
+ "kind": "const",
213
+ "value": [
214
+ 112,
215
+ 114,
216
+ 111,
217
+ 102,
218
+ 105,
219
+ 108,
220
+ 101,
221
+ 115,
222
+ 45,
223
+ 105,
224
+ 110,
225
+ 100,
226
+ 101,
227
+ 120
228
+ ]
229
+ }
230
+ ]
231
+ }
232
+ },
233
+ {
234
+ "name": "admin",
235
+ "signer": true
236
+ }
237
+ ],
238
+ "args": [
239
+ {
240
+ "name": "route_id",
241
+ "type": {
242
+ "array": [
243
+ "u8",
244
+ 32
245
+ ]
246
+ }
247
+ }
248
+ ]
249
+ },
250
+ {
251
+ "name": "grant_pauser_role",
252
+ "discriminator": [
253
+ 88,
254
+ 76,
255
+ 118,
256
+ 27,
257
+ 100,
258
+ 21,
259
+ 176,
260
+ 100
261
+ ],
262
+ "accounts": [
263
+ {
264
+ "name": "config",
265
+ "writable": true,
266
+ "pda": {
267
+ "seeds": [
268
+ {
269
+ "kind": "const",
270
+ "value": [
271
+ 99,
272
+ 111,
273
+ 110,
274
+ 102,
275
+ 105,
276
+ 103
277
+ ]
278
+ }
279
+ ]
280
+ }
281
+ },
282
+ {
283
+ "name": "admin",
284
+ "signer": true
285
+ }
286
+ ],
287
+ "args": [
288
+ {
289
+ "name": "pauser",
290
+ "type": "pubkey"
291
+ }
292
+ ]
293
+ },
294
+ {
295
+ "name": "grant_signer_role",
296
+ "discriminator": [
297
+ 228,
298
+ 184,
299
+ 14,
300
+ 183,
301
+ 65,
302
+ 234,
303
+ 104,
304
+ 55
305
+ ],
306
+ "accounts": [
307
+ {
308
+ "name": "config",
309
+ "writable": true,
310
+ "pda": {
311
+ "seeds": [
312
+ {
313
+ "kind": "const",
314
+ "value": [
315
+ 99,
316
+ 111,
317
+ 110,
318
+ 102,
319
+ 105,
320
+ 103
321
+ ]
322
+ }
323
+ ]
324
+ }
325
+ },
326
+ {
327
+ "name": "admin",
328
+ "signer": true
329
+ }
330
+ ],
331
+ "args": [
332
+ {
333
+ "name": "signer",
334
+ "type": {
335
+ "array": [
336
+ "u8",
337
+ 64
338
+ ]
339
+ }
340
+ }
341
+ ]
342
+ },
343
+ {
344
+ "name": "initialize",
345
+ "discriminator": [
346
+ 175,
347
+ 175,
348
+ 109,
349
+ 31,
350
+ 13,
351
+ 152,
352
+ 155,
353
+ 237
354
+ ],
355
+ "accounts": [
356
+ {
357
+ "name": "payer",
358
+ "docs": [
359
+ "Only the hardcoded deployer may initialize the canonical singleton PDAs.",
360
+ "Enforced both via `address = DEPLOYER` constraint and a runtime check in",
361
+ "the handler (belt-and-braces)."
362
+ ],
363
+ "writable": true,
364
+ "signer": true,
365
+ "address": "Fz3jd5NAHQy1JbfdWFZYLYtT57BaeM4Bgx5EBnswe2Pz"
366
+ },
367
+ {
368
+ "name": "config",
369
+ "writable": true,
370
+ "pda": {
371
+ "seeds": [
372
+ {
373
+ "kind": "const",
374
+ "value": [
375
+ 99,
376
+ 111,
377
+ 110,
378
+ 102,
379
+ 105,
380
+ 103
381
+ ]
382
+ }
383
+ ]
384
+ }
385
+ },
386
+ {
387
+ "name": "token_list",
388
+ "writable": true,
389
+ "pda": {
390
+ "seeds": [
391
+ {
392
+ "kind": "const",
393
+ "value": [
394
+ 116,
395
+ 111,
396
+ 107,
397
+ 101,
398
+ 110,
399
+ 45,
400
+ 108,
401
+ 105,
402
+ 115,
403
+ 116
404
+ ]
405
+ }
406
+ ]
407
+ }
408
+ },
409
+ {
410
+ "name": "profiles",
411
+ "writable": true,
412
+ "pda": {
413
+ "seeds": [
414
+ {
415
+ "kind": "const",
416
+ "value": [
417
+ 112,
418
+ 114,
419
+ 111,
420
+ 102,
421
+ 105,
422
+ 108,
423
+ 101,
424
+ 115,
425
+ 45,
426
+ 105,
427
+ 110,
428
+ 100,
429
+ 101,
430
+ 120
431
+ ]
432
+ }
433
+ ]
434
+ }
435
+ },
436
+ {
437
+ "name": "system_program",
438
+ "address": "11111111111111111111111111111111"
439
+ }
440
+ ],
441
+ "args": [
442
+ {
443
+ "name": "params",
444
+ "type": {
445
+ "defined": {
446
+ "name": "InitializeParams"
447
+ }
448
+ }
449
+ }
450
+ ]
451
+ },
452
+ {
453
+ "name": "pause",
454
+ "discriminator": [
455
+ 211,
456
+ 22,
457
+ 221,
458
+ 251,
459
+ 74,
460
+ 121,
461
+ 193,
462
+ 47
463
+ ],
464
+ "accounts": [
465
+ {
466
+ "name": "config",
467
+ "writable": true,
468
+ "pda": {
469
+ "seeds": [
470
+ {
471
+ "kind": "const",
472
+ "value": [
473
+ 99,
474
+ 111,
475
+ 110,
476
+ 102,
477
+ 105,
478
+ 103
479
+ ]
480
+ }
481
+ ]
482
+ }
483
+ },
484
+ {
485
+ "name": "authority",
486
+ "signer": true
487
+ }
488
+ ],
489
+ "args": []
490
+ },
491
+ {
492
+ "name": "quote_total",
493
+ "discriminator": [
494
+ 64,
495
+ 254,
496
+ 129,
497
+ 26,
498
+ 113,
499
+ 240,
500
+ 75,
501
+ 176
502
+ ],
503
+ "accounts": [
504
+ {
505
+ "name": "config",
506
+ "pda": {
507
+ "seeds": [
508
+ {
509
+ "kind": "const",
510
+ "value": [
511
+ 99,
512
+ 111,
513
+ 110,
514
+ 102,
515
+ 105,
516
+ 103
517
+ ]
518
+ }
519
+ ]
520
+ }
521
+ },
522
+ {
523
+ "name": "profiles",
524
+ "pda": {
525
+ "seeds": [
526
+ {
527
+ "kind": "const",
528
+ "value": [
529
+ 112,
530
+ 114,
531
+ 111,
532
+ 102,
533
+ 105,
534
+ 108,
535
+ 101,
536
+ 115,
537
+ 45,
538
+ 105,
539
+ 110,
540
+ 100,
541
+ 101,
542
+ 120
543
+ ]
544
+ }
545
+ ]
546
+ }
547
+ }
548
+ ],
549
+ "args": [
550
+ {
551
+ "name": "gross_amount",
552
+ "type": "u64"
553
+ },
554
+ {
555
+ "name": "route_id",
556
+ "type": {
557
+ "array": [
558
+ "u8",
559
+ 32
560
+ ]
561
+ }
562
+ },
563
+ {
564
+ "name": "ip_creator",
565
+ "type": "pubkey"
566
+ }
567
+ ],
568
+ "returns": {
569
+ "defined": {
570
+ "name": "QuoteTotalResult"
571
+ }
572
+ }
573
+ },
574
+ {
575
+ "name": "rotate_admin_role",
576
+ "discriminator": [
577
+ 37,
578
+ 242,
579
+ 88,
580
+ 72,
581
+ 253,
582
+ 62,
583
+ 42,
584
+ 139
585
+ ],
586
+ "accounts": [
587
+ {
588
+ "name": "config",
589
+ "writable": true,
590
+ "pda": {
591
+ "seeds": [
592
+ {
593
+ "kind": "const",
594
+ "value": [
595
+ 99,
596
+ 111,
597
+ 110,
598
+ 102,
599
+ 105,
600
+ 103
601
+ ]
602
+ }
603
+ ]
604
+ }
605
+ },
606
+ {
607
+ "name": "admin",
608
+ "signer": true
609
+ }
610
+ ],
611
+ "args": [
612
+ {
613
+ "name": "new_admin",
614
+ "type": "pubkey"
615
+ }
616
+ ]
617
+ },
618
+ {
619
+ "name": "rotate_pauser_role",
620
+ "discriminator": [
621
+ 240,
622
+ 142,
623
+ 250,
624
+ 132,
625
+ 214,
626
+ 119,
627
+ 132,
628
+ 22
629
+ ],
630
+ "accounts": [
631
+ {
632
+ "name": "config",
633
+ "writable": true,
634
+ "pda": {
635
+ "seeds": [
636
+ {
637
+ "kind": "const",
638
+ "value": [
639
+ 99,
640
+ 111,
641
+ 110,
642
+ 102,
643
+ 105,
644
+ 103
645
+ ]
646
+ }
647
+ ]
648
+ }
649
+ },
650
+ {
651
+ "name": "admin",
652
+ "signer": true
653
+ }
654
+ ],
655
+ "args": [
656
+ {
657
+ "name": "new_pauser",
658
+ "type": "pubkey"
659
+ }
660
+ ]
661
+ },
662
+ {
663
+ "name": "rotate_signer_role",
664
+ "discriminator": [
665
+ 221,
666
+ 87,
667
+ 44,
668
+ 133,
669
+ 28,
670
+ 108,
671
+ 195,
672
+ 255
673
+ ],
674
+ "accounts": [
675
+ {
676
+ "name": "config",
677
+ "writable": true,
678
+ "pda": {
679
+ "seeds": [
680
+ {
681
+ "kind": "const",
682
+ "value": [
683
+ 99,
684
+ 111,
685
+ 110,
686
+ 102,
687
+ 105,
688
+ 103
689
+ ]
690
+ }
691
+ ]
692
+ }
693
+ },
694
+ {
695
+ "name": "admin",
696
+ "signer": true
697
+ }
698
+ ],
699
+ "args": [
700
+ {
701
+ "name": "new_signer",
702
+ "type": {
703
+ "array": [
704
+ "u8",
705
+ 64
706
+ ]
707
+ }
708
+ }
709
+ ]
710
+ },
711
+ {
712
+ "name": "set_treasury",
713
+ "discriminator": [
714
+ 57,
715
+ 97,
716
+ 196,
717
+ 95,
718
+ 195,
719
+ 206,
720
+ 106,
721
+ 136
722
+ ],
723
+ "accounts": [
724
+ {
725
+ "name": "config",
726
+ "writable": true,
727
+ "pda": {
728
+ "seeds": [
729
+ {
730
+ "kind": "const",
731
+ "value": [
732
+ 99,
733
+ 111,
734
+ 110,
735
+ 102,
736
+ 105,
737
+ 103
738
+ ]
739
+ }
740
+ ]
741
+ }
742
+ },
743
+ {
744
+ "name": "admin",
745
+ "signer": true
746
+ }
747
+ ],
748
+ "args": [
749
+ {
750
+ "name": "new_treasury",
751
+ "type": "pubkey"
752
+ }
753
+ ]
754
+ },
755
+ {
756
+ "name": "set_whitelisted_tokens",
757
+ "discriminator": [
758
+ 155,
759
+ 198,
760
+ 137,
761
+ 222,
762
+ 224,
763
+ 125,
764
+ 184,
765
+ 198
766
+ ],
767
+ "accounts": [
768
+ {
769
+ "name": "config",
770
+ "pda": {
771
+ "seeds": [
772
+ {
773
+ "kind": "const",
774
+ "value": [
775
+ 99,
776
+ 111,
777
+ 110,
778
+ 102,
779
+ 105,
780
+ 103
781
+ ]
782
+ }
783
+ ]
784
+ }
785
+ },
786
+ {
787
+ "name": "token_list",
788
+ "writable": true,
789
+ "pda": {
790
+ "seeds": [
791
+ {
792
+ "kind": "const",
793
+ "value": [
794
+ 116,
795
+ 111,
796
+ 107,
797
+ 101,
798
+ 110,
799
+ 45,
800
+ 108,
801
+ 105,
802
+ 115,
803
+ 116
804
+ ]
805
+ }
806
+ ]
807
+ }
808
+ },
809
+ {
810
+ "name": "admin",
811
+ "signer": true
812
+ },
813
+ {
814
+ "name": "token_program",
815
+ "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
816
+ }
817
+ ],
818
+ "args": [
819
+ {
820
+ "name": "tokens",
821
+ "type": {
822
+ "vec": "pubkey"
823
+ }
824
+ },
825
+ {
826
+ "name": "allowed",
827
+ "type": {
828
+ "vec": "bool"
829
+ }
830
+ }
831
+ ]
832
+ },
833
+ {
834
+ "name": "settle_native",
835
+ "discriminator": [
836
+ 117,
837
+ 220,
838
+ 69,
839
+ 41,
840
+ 231,
841
+ 241,
842
+ 119,
843
+ 57
844
+ ],
845
+ "accounts": [
846
+ {
847
+ "name": "config",
848
+ "writable": true,
849
+ "pda": {
850
+ "seeds": [
851
+ {
852
+ "kind": "const",
853
+ "value": [
854
+ 99,
855
+ 111,
856
+ 110,
857
+ 102,
858
+ 105,
859
+ 103
860
+ ]
861
+ }
862
+ ]
863
+ }
864
+ },
865
+ {
866
+ "name": "payer_nonce",
867
+ "writable": true,
868
+ "pda": {
869
+ "seeds": [
870
+ {
871
+ "kind": "const",
872
+ "value": [
873
+ 112,
874
+ 97,
875
+ 121,
876
+ 101,
877
+ 114,
878
+ 45,
879
+ 110,
880
+ 111,
881
+ 110,
882
+ 99,
883
+ 101
884
+ ]
885
+ },
886
+ {
887
+ "kind": "account",
888
+ "path": "payer"
889
+ }
890
+ ]
891
+ }
892
+ },
893
+ {
894
+ "name": "consumed_nonce",
895
+ "writable": true,
896
+ "pda": {
897
+ "seeds": [
898
+ {
899
+ "kind": "const",
900
+ "value": [
901
+ 99,
902
+ 111,
903
+ 110,
904
+ 115,
905
+ 117,
906
+ 109,
907
+ 101,
908
+ 100,
909
+ 45,
910
+ 110,
911
+ 111,
912
+ 110,
913
+ 99,
914
+ 101
915
+ ]
916
+ },
917
+ {
918
+ "kind": "account",
919
+ "path": "payer"
920
+ },
921
+ {
922
+ "kind": "arg",
923
+ "path": "nonce"
924
+ }
925
+ ]
926
+ }
927
+ },
928
+ {
929
+ "name": "payer",
930
+ "writable": true,
931
+ "signer": true
932
+ },
933
+ {
934
+ "name": "merchant",
935
+ "writable": true
936
+ },
937
+ {
938
+ "name": "treasury",
939
+ "writable": true
940
+ },
941
+ {
942
+ "name": "ip_creator",
943
+ "writable": true
944
+ },
945
+ {
946
+ "name": "profiles",
947
+ "writable": true,
948
+ "pda": {
949
+ "seeds": [
950
+ {
951
+ "kind": "const",
952
+ "value": [
953
+ 112,
954
+ 114,
955
+ 111,
956
+ 102,
957
+ 105,
958
+ 108,
959
+ 101,
960
+ 115,
961
+ 45,
962
+ 105,
963
+ 110,
964
+ 100,
965
+ 101,
966
+ 120
967
+ ]
968
+ }
969
+ ]
970
+ }
971
+ },
972
+ {
973
+ "name": "system_program",
974
+ "address": "11111111111111111111111111111111"
975
+ }
976
+ ],
977
+ "args": [
978
+ {
979
+ "name": "nonce",
980
+ "type": "u64"
981
+ },
982
+ {
983
+ "name": "quote",
984
+ "type": {
985
+ "defined": {
986
+ "name": "Quote"
987
+ }
988
+ }
989
+ },
990
+ {
991
+ "name": "signature",
992
+ "type": {
993
+ "array": [
994
+ "u8",
995
+ 65
996
+ ]
997
+ }
998
+ }
999
+ ]
1000
+ },
1001
+ {
1002
+ "name": "settle_stable",
1003
+ "discriminator": [
1004
+ 122,
1005
+ 84,
1006
+ 19,
1007
+ 134,
1008
+ 147,
1009
+ 115,
1010
+ 154,
1011
+ 207
1012
+ ],
1013
+ "accounts": [
1014
+ {
1015
+ "name": "config",
1016
+ "pda": {
1017
+ "seeds": [
1018
+ {
1019
+ "kind": "const",
1020
+ "value": [
1021
+ 99,
1022
+ 111,
1023
+ 110,
1024
+ 102,
1025
+ 105,
1026
+ 103
1027
+ ]
1028
+ }
1029
+ ]
1030
+ }
1031
+ },
1032
+ {
1033
+ "name": "payer_nonce",
1034
+ "writable": true,
1035
+ "pda": {
1036
+ "seeds": [
1037
+ {
1038
+ "kind": "const",
1039
+ "value": [
1040
+ 112,
1041
+ 97,
1042
+ 121,
1043
+ 101,
1044
+ 114,
1045
+ 45,
1046
+ 110,
1047
+ 111,
1048
+ 110,
1049
+ 99,
1050
+ 101
1051
+ ]
1052
+ },
1053
+ {
1054
+ "kind": "account",
1055
+ "path": "payer"
1056
+ }
1057
+ ]
1058
+ }
1059
+ },
1060
+ {
1061
+ "name": "consumed_nonce",
1062
+ "writable": true,
1063
+ "pda": {
1064
+ "seeds": [
1065
+ {
1066
+ "kind": "const",
1067
+ "value": [
1068
+ 99,
1069
+ 111,
1070
+ 110,
1071
+ 115,
1072
+ 117,
1073
+ 109,
1074
+ 101,
1075
+ 100,
1076
+ 45,
1077
+ 110,
1078
+ 111,
1079
+ 110,
1080
+ 99,
1081
+ 101
1082
+ ]
1083
+ },
1084
+ {
1085
+ "kind": "account",
1086
+ "path": "payer"
1087
+ },
1088
+ {
1089
+ "kind": "arg",
1090
+ "path": "nonce"
1091
+ }
1092
+ ]
1093
+ }
1094
+ },
1095
+ {
1096
+ "name": "payer",
1097
+ "writable": true,
1098
+ "signer": true
1099
+ },
1100
+ {
1101
+ "name": "token_list"
1102
+ },
1103
+ {
1104
+ "name": "mint",
1105
+ "docs": [
1106
+ "Mint is a real SPL Mint; Anchor validates owner == token_program and",
1107
+ "deserializes the Mint layout. SOL-HIGH-002 / SOL-LOW-003."
1108
+ ]
1109
+ },
1110
+ {
1111
+ "name": "profiles",
1112
+ "writable": true,
1113
+ "pda": {
1114
+ "seeds": [
1115
+ {
1116
+ "kind": "const",
1117
+ "value": [
1118
+ 112,
1119
+ 114,
1120
+ 111,
1121
+ 102,
1122
+ 105,
1123
+ 108,
1124
+ 101,
1125
+ 115,
1126
+ 45,
1127
+ 105,
1128
+ 110,
1129
+ 100,
1130
+ 101,
1131
+ 120
1132
+ ]
1133
+ }
1134
+ ]
1135
+ }
1136
+ },
1137
+ {
1138
+ "name": "token_program",
1139
+ "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
1140
+ },
1141
+ {
1142
+ "name": "system_program",
1143
+ "address": "11111111111111111111111111111111"
1144
+ }
1145
+ ],
1146
+ "args": [
1147
+ {
1148
+ "name": "nonce",
1149
+ "type": "u64"
1150
+ },
1151
+ {
1152
+ "name": "quote",
1153
+ "type": {
1154
+ "defined": {
1155
+ "name": "Quote"
1156
+ }
1157
+ }
1158
+ },
1159
+ {
1160
+ "name": "signature",
1161
+ "type": {
1162
+ "array": [
1163
+ "u8",
1164
+ 65
1165
+ ]
1166
+ }
1167
+ }
1168
+ ]
1169
+ },
1170
+ {
1171
+ "name": "unpause",
1172
+ "discriminator": [
1173
+ 169,
1174
+ 144,
1175
+ 4,
1176
+ 38,
1177
+ 10,
1178
+ 141,
1179
+ 188,
1180
+ 255
1181
+ ],
1182
+ "accounts": [
1183
+ {
1184
+ "name": "config",
1185
+ "writable": true,
1186
+ "pda": {
1187
+ "seeds": [
1188
+ {
1189
+ "kind": "const",
1190
+ "value": [
1191
+ 99,
1192
+ 111,
1193
+ 110,
1194
+ 102,
1195
+ 105,
1196
+ 103
1197
+ ]
1198
+ }
1199
+ ]
1200
+ }
1201
+ },
1202
+ {
1203
+ "name": "admin",
1204
+ "signer": true
1205
+ }
1206
+ ],
1207
+ "args": []
1208
+ }
1209
+ ],
1210
+ "accounts": [
1211
+ {
1212
+ "name": "Config",
1213
+ "discriminator": [
1214
+ 155,
1215
+ 12,
1216
+ 170,
1217
+ 224,
1218
+ 30,
1219
+ 250,
1220
+ 204,
1221
+ 130
1222
+ ]
1223
+ },
1224
+ {
1225
+ "name": "ConsumedNonce",
1226
+ "discriminator": [
1227
+ 203,
1228
+ 122,
1229
+ 100,
1230
+ 36,
1231
+ 241,
1232
+ 214,
1233
+ 161,
1234
+ 246
1235
+ ]
1236
+ },
1237
+ {
1238
+ "name": "PayerNonce",
1239
+ "discriminator": [
1240
+ 239,
1241
+ 33,
1242
+ 176,
1243
+ 46,
1244
+ 128,
1245
+ 49,
1246
+ 65,
1247
+ 40
1248
+ ]
1249
+ },
1250
+ {
1251
+ "name": "ProfilesIndex",
1252
+ "discriminator": [
1253
+ 226,
1254
+ 221,
1255
+ 186,
1256
+ 252,
1257
+ 104,
1258
+ 74,
1259
+ 245,
1260
+ 98
1261
+ ]
1262
+ },
1263
+ {
1264
+ "name": "TokenList",
1265
+ "discriminator": [
1266
+ 145,
1267
+ 167,
1268
+ 153,
1269
+ 173,
1270
+ 5,
1271
+ 187,
1272
+ 157,
1273
+ 150
1274
+ ]
1275
+ }
1276
+ ],
1277
+ "events": [
1278
+ {
1279
+ "name": "Payment",
1280
+ "discriminator": [
1281
+ 173,
1282
+ 15,
1283
+ 163,
1284
+ 37,
1285
+ 17,
1286
+ 144,
1287
+ 245,
1288
+ 221
1289
+ ]
1290
+ },
1291
+ {
1292
+ "name": "TreasuryUpdated",
1293
+ "discriminator": [
1294
+ 80,
1295
+ 239,
1296
+ 54,
1297
+ 168,
1298
+ 43,
1299
+ 38,
1300
+ 85,
1301
+ 145
1302
+ ]
1303
+ }
1304
+ ],
1305
+ "errors": [
1306
+ {
1307
+ "code": 6000,
1308
+ "name": "Unauthorized",
1309
+ "msg": "Caller is not authorized for this operation"
1310
+ },
1311
+ {
1312
+ "code": 6001,
1313
+ "name": "ZeroAmount",
1314
+ "msg": "Amount must be greater than zero"
1315
+ },
1316
+ {
1317
+ "code": 6002,
1318
+ "name": "ZeroMerchant",
1319
+ "msg": "Merchant address must be non-zero"
1320
+ },
1321
+ {
1322
+ "code": 6003,
1323
+ "name": "ZeroTreasury",
1324
+ "msg": "Treasury address must be non-zero"
1325
+ },
1326
+ {
1327
+ "code": 6004,
1328
+ "name": "UnsupportedToken",
1329
+ "msg": "Token is not whitelisted for stable settlement"
1330
+ },
1331
+ {
1332
+ "code": 6005,
1333
+ "name": "PaymentTooSmallForRoyalty",
1334
+ "msg": "Gross amount is too small to produce a non-zero royalty"
1335
+ },
1336
+ {
1337
+ "code": 6006,
1338
+ "name": "PaymentTooSmallForTreasury",
1339
+ "msg": "Gross amount is too small to produce a non-zero treasury fee"
1340
+ },
1341
+ {
1342
+ "code": 6007,
1343
+ "name": "MerchantTransferFailed",
1344
+ "msg": "Native transfer to merchant failed"
1345
+ },
1346
+ {
1347
+ "code": 6008,
1348
+ "name": "TreasuryTransferFailed",
1349
+ "msg": "Native transfer to treasury failed"
1350
+ },
1351
+ {
1352
+ "code": 6009,
1353
+ "name": "IPCreatorTransferFailed",
1354
+ "msg": "Native transfer to IP creator failed"
1355
+ },
1356
+ {
1357
+ "code": 6010,
1358
+ "name": "IncorrectNativeValue",
1359
+ "msg": "Sent lamports do not match quote gross_amount"
1360
+ },
1361
+ {
1362
+ "code": 6011,
1363
+ "name": "MissingIPCreator",
1364
+ "msg": "Route requires an IP creator address"
1365
+ },
1366
+ {
1367
+ "code": 6012,
1368
+ "name": "IPCreatorMismatch",
1369
+ "msg": "IP creator account does not match the quote"
1370
+ },
1371
+ {
1372
+ "code": 6013,
1373
+ "name": "InvalidSigner",
1374
+ "msg": "Recovered signer does not hold SIGN_OPERATOR_ROLE"
1375
+ },
1376
+ {
1377
+ "code": 6014,
1378
+ "name": "InvalidSignature",
1379
+ "msg": "Signature is malformed or recovery failed"
1380
+ },
1381
+ {
1382
+ "code": 6015,
1383
+ "name": "InvalidSignatureLength",
1384
+ "msg": "Signature length must be 65 bytes"
1385
+ },
1386
+ {
1387
+ "code": 6016,
1388
+ "name": "SignatureExpired",
1389
+ "msg": "Quote has expired"
1390
+ },
1391
+ {
1392
+ "code": 6017,
1393
+ "name": "InvalidPayer",
1394
+ "msg": "Quote payer must match transaction signer"
1395
+ },
1396
+ {
1397
+ "code": 6018,
1398
+ "name": "MerchantMismatch",
1399
+ "msg": "Quote merchant must match the provided merchant account"
1400
+ },
1401
+ {
1402
+ "code": 6019,
1403
+ "name": "InvalidNonce",
1404
+ "msg": "Quote nonce does not match payer nonce"
1405
+ },
1406
+ {
1407
+ "code": 6020,
1408
+ "name": "NonceAlreadyConsumed",
1409
+ "msg": "Quote nonce has already been consumed"
1410
+ },
1411
+ {
1412
+ "code": 6021,
1413
+ "name": "NonceOverflow",
1414
+ "msg": "Nonce overflow"
1415
+ },
1416
+ {
1417
+ "code": 6022,
1418
+ "name": "InvalidTokenForNative",
1419
+ "msg": "Native settlement requires token == Pubkey::default()"
1420
+ },
1421
+ {
1422
+ "code": 6023,
1423
+ "name": "RouteDisabled",
1424
+ "msg": "Route is disabled"
1425
+ },
1426
+ {
1427
+ "code": 6024,
1428
+ "name": "UnknownRoute",
1429
+ "msg": "Unknown route"
1430
+ },
1431
+ {
1432
+ "code": 6025,
1433
+ "name": "TreasuryFeeTooHigh",
1434
+ "msg": "Treasury fee basis points exceeds maximum"
1435
+ },
1436
+ {
1437
+ "code": 6026,
1438
+ "name": "IPCreatorFeeTooHigh",
1439
+ "msg": "IP creator fee basis points exceeds maximum"
1440
+ },
1441
+ {
1442
+ "code": 6027,
1443
+ "name": "AggregateFeeTooHigh",
1444
+ "msg": "Aggregate fees exceed maximum"
1445
+ },
1446
+ {
1447
+ "code": 6028,
1448
+ "name": "FeeExceedsGross",
1449
+ "msg": "Fees exceed gross amount"
1450
+ },
1451
+ {
1452
+ "code": 6029,
1453
+ "name": "ZeroSigner",
1454
+ "msg": "Signer address must be non-zero"
1455
+ },
1456
+ {
1457
+ "code": 6030,
1458
+ "name": "ZeroPauser",
1459
+ "msg": "Pauser address must be non-zero"
1460
+ },
1461
+ {
1462
+ "code": 6031,
1463
+ "name": "PauserEqualsSigner",
1464
+ "msg": "Pauser and signer must be distinct"
1465
+ },
1466
+ {
1467
+ "code": 6032,
1468
+ "name": "AdminEqualsSigner",
1469
+ "msg": "Admin and signer/pauser must be distinct"
1470
+ },
1471
+ {
1472
+ "code": 6033,
1473
+ "name": "ZeroAdmin",
1474
+ "msg": "Admin address must be non-zero"
1475
+ },
1476
+ {
1477
+ "code": 6034,
1478
+ "name": "ZeroDeployer",
1479
+ "msg": "Deployer address must be non-zero"
1480
+ },
1481
+ {
1482
+ "code": 6035,
1483
+ "name": "InvalidDeployer",
1484
+ "msg": "Caller is not the authorized deployer"
1485
+ },
1486
+ {
1487
+ "code": 6036,
1488
+ "name": "ArrayLengthMismatch",
1489
+ "msg": "Token and flag array lengths must match"
1490
+ },
1491
+ {
1492
+ "code": 6037,
1493
+ "name": "TokenListFull",
1494
+ "msg": "Token list is full"
1495
+ },
1496
+ {
1497
+ "code": 6038,
1498
+ "name": "ProtocolPaused",
1499
+ "msg": "Program is currently paused"
1500
+ },
1501
+ {
1502
+ "code": 6039,
1503
+ "name": "RouteTreasuryZero",
1504
+ "msg": "Profile route_treasury must be non-zero when set"
1505
+ },
1506
+ {
1507
+ "code": 6040,
1508
+ "name": "ZeroStablecoin",
1509
+ "msg": "Stablecoin mint address must be non-zero"
1510
+ },
1511
+ {
1512
+ "code": 6041,
1513
+ "name": "DuplicateToken",
1514
+ "msg": "Duplicate token mint in update"
1515
+ },
1516
+ {
1517
+ "code": 6042,
1518
+ "name": "DuplicateSettlementAccount",
1519
+ "msg": "Settlement accounts must be distinct from the payer and from each other"
1520
+ },
1521
+ {
1522
+ "code": 6043,
1523
+ "name": "ProtocolAccountMisuse",
1524
+ "msg": "Settlement recipient is a protocol PDA; funds would be locked"
1525
+ },
1526
+ {
1527
+ "code": 6044,
1528
+ "name": "TokenAccountOwnerMismatch",
1529
+ "msg": "Token account owner does not match expected owner"
1530
+ },
1531
+ {
1532
+ "code": 6045,
1533
+ "name": "InvalidMint",
1534
+ "msg": "Mint account is not a valid SPL Mint owned by the token program"
1535
+ },
1536
+ {
1537
+ "code": 6046,
1538
+ "name": "DestinationNotWritable",
1539
+ "msg": "Settlement destination account is not writable"
1540
+ },
1541
+ {
1542
+ "code": 6047,
1543
+ "name": "InvalidRecoveryId",
1544
+ "msg": "Recovery ID out of range; expected 0 or 1"
1545
+ }
1546
+ ],
1547
+ "types": [
1548
+ {
1549
+ "name": "Config",
1550
+ "docs": [
1551
+ "Global configuration and RBAC registry."
1552
+ ],
1553
+ "type": {
1554
+ "kind": "struct",
1555
+ "fields": [
1556
+ {
1557
+ "name": "admin",
1558
+ "type": "pubkey"
1559
+ },
1560
+ {
1561
+ "name": "signer",
1562
+ "type": {
1563
+ "array": [
1564
+ "u8",
1565
+ 64
1566
+ ]
1567
+ }
1568
+ },
1569
+ {
1570
+ "name": "pauser",
1571
+ "type": "pubkey"
1572
+ },
1573
+ {
1574
+ "name": "treasury",
1575
+ "type": "pubkey"
1576
+ },
1577
+ {
1578
+ "name": "token_list",
1579
+ "type": "pubkey"
1580
+ },
1581
+ {
1582
+ "name": "profiles",
1583
+ "type": "pubkey"
1584
+ },
1585
+ {
1586
+ "name": "bump",
1587
+ "type": "u8"
1588
+ },
1589
+ {
1590
+ "name": "is_paused",
1591
+ "type": "bool"
1592
+ }
1593
+ ]
1594
+ }
1595
+ },
1596
+ {
1597
+ "name": "ConsumedNonce",
1598
+ "docs": [
1599
+ "Marker that a (payer, nonce) pair has been consumed."
1600
+ ],
1601
+ "type": {
1602
+ "kind": "struct",
1603
+ "fields": [
1604
+ {
1605
+ "name": "payer",
1606
+ "type": "pubkey"
1607
+ },
1608
+ {
1609
+ "name": "nonce",
1610
+ "type": "u64"
1611
+ },
1612
+ {
1613
+ "name": "consumed",
1614
+ "type": "bool"
1615
+ },
1616
+ {
1617
+ "name": "bump",
1618
+ "type": "u8"
1619
+ }
1620
+ ]
1621
+ }
1622
+ },
1623
+ {
1624
+ "name": "InitializeParams",
1625
+ "type": {
1626
+ "kind": "struct",
1627
+ "fields": [
1628
+ {
1629
+ "name": "admin",
1630
+ "type": "pubkey"
1631
+ },
1632
+ {
1633
+ "name": "signer",
1634
+ "type": {
1635
+ "array": [
1636
+ "u8",
1637
+ 64
1638
+ ]
1639
+ }
1640
+ },
1641
+ {
1642
+ "name": "pauser",
1643
+ "type": "pubkey"
1644
+ },
1645
+ {
1646
+ "name": "treasury",
1647
+ "type": "pubkey"
1648
+ },
1649
+ {
1650
+ "name": "stablecoins",
1651
+ "type": {
1652
+ "vec": "pubkey"
1653
+ }
1654
+ },
1655
+ {
1656
+ "name": "route_ids",
1657
+ "type": {
1658
+ "vec": {
1659
+ "array": [
1660
+ "u8",
1661
+ 32
1662
+ ]
1663
+ }
1664
+ }
1665
+ },
1666
+ {
1667
+ "name": "treasury_bps",
1668
+ "type": {
1669
+ "vec": "u16"
1670
+ }
1671
+ },
1672
+ {
1673
+ "name": "ip_creator_bps",
1674
+ "type": {
1675
+ "vec": "u16"
1676
+ }
1677
+ }
1678
+ ]
1679
+ }
1680
+ },
1681
+ {
1682
+ "name": "PayerNonce",
1683
+ "docs": [
1684
+ "Per-payer monotonic nonce."
1685
+ ],
1686
+ "type": {
1687
+ "kind": "struct",
1688
+ "fields": [
1689
+ {
1690
+ "name": "payer",
1691
+ "type": "pubkey"
1692
+ },
1693
+ {
1694
+ "name": "nonce",
1695
+ "type": "u64"
1696
+ },
1697
+ {
1698
+ "name": "bump",
1699
+ "type": "u8"
1700
+ }
1701
+ ]
1702
+ }
1703
+ },
1704
+ {
1705
+ "name": "Payment",
1706
+ "docs": [
1707
+ "Event emitted on every successful settlement."
1708
+ ],
1709
+ "type": {
1710
+ "kind": "struct",
1711
+ "fields": [
1712
+ {
1713
+ "name": "payment_id",
1714
+ "type": {
1715
+ "array": [
1716
+ "u8",
1717
+ 32
1718
+ ]
1719
+ }
1720
+ },
1721
+ {
1722
+ "name": "payer",
1723
+ "type": "pubkey"
1724
+ },
1725
+ {
1726
+ "name": "merchant",
1727
+ "type": "pubkey"
1728
+ },
1729
+ {
1730
+ "name": "token",
1731
+ "type": "pubkey"
1732
+ },
1733
+ {
1734
+ "name": "gross_amount",
1735
+ "type": "u64"
1736
+ },
1737
+ {
1738
+ "name": "merchant_amount",
1739
+ "type": "u64"
1740
+ },
1741
+ {
1742
+ "name": "treasury_amount",
1743
+ "type": "u64"
1744
+ },
1745
+ {
1746
+ "name": "ip_creator_amount",
1747
+ "type": "u64"
1748
+ },
1749
+ {
1750
+ "name": "valid_until",
1751
+ "type": "i64"
1752
+ },
1753
+ {
1754
+ "name": "route_id",
1755
+ "type": {
1756
+ "array": [
1757
+ "u8",
1758
+ 32
1759
+ ]
1760
+ }
1761
+ },
1762
+ {
1763
+ "name": "order_id_hash",
1764
+ "type": {
1765
+ "array": [
1766
+ "u8",
1767
+ 32
1768
+ ]
1769
+ }
1770
+ }
1771
+ ]
1772
+ }
1773
+ },
1774
+ {
1775
+ "name": "ProfilesIndex",
1776
+ "docs": [
1777
+ "Registry of all route profiles."
1778
+ ],
1779
+ "type": {
1780
+ "kind": "struct",
1781
+ "fields": [
1782
+ {
1783
+ "name": "entries",
1784
+ "type": {
1785
+ "vec": {
1786
+ "defined": {
1787
+ "name": "RouteProfileEntry"
1788
+ }
1789
+ }
1790
+ }
1791
+ },
1792
+ {
1793
+ "name": "count",
1794
+ "type": "u8"
1795
+ },
1796
+ {
1797
+ "name": "bump",
1798
+ "type": "u8"
1799
+ }
1800
+ ]
1801
+ }
1802
+ },
1803
+ {
1804
+ "name": "Quote",
1805
+ "docs": [
1806
+ "Signed quote submitted by the payer."
1807
+ ],
1808
+ "type": {
1809
+ "kind": "struct",
1810
+ "fields": [
1811
+ {
1812
+ "name": "payer",
1813
+ "type": "pubkey"
1814
+ },
1815
+ {
1816
+ "name": "merchant",
1817
+ "type": "pubkey"
1818
+ },
1819
+ {
1820
+ "name": "token",
1821
+ "type": "pubkey"
1822
+ },
1823
+ {
1824
+ "name": "gross_amount",
1825
+ "type": "u64"
1826
+ },
1827
+ {
1828
+ "name": "ip_creator",
1829
+ "type": "pubkey"
1830
+ },
1831
+ {
1832
+ "name": "valid_until",
1833
+ "type": "i64"
1834
+ },
1835
+ {
1836
+ "name": "order_id_hash",
1837
+ "type": {
1838
+ "array": [
1839
+ "u8",
1840
+ 32
1841
+ ]
1842
+ }
1843
+ },
1844
+ {
1845
+ "name": "nonce",
1846
+ "type": "u64"
1847
+ },
1848
+ {
1849
+ "name": "route_id",
1850
+ "type": {
1851
+ "array": [
1852
+ "u8",
1853
+ 32
1854
+ ]
1855
+ }
1856
+ }
1857
+ ]
1858
+ }
1859
+ },
1860
+ {
1861
+ "name": "QuoteTotalResult",
1862
+ "type": {
1863
+ "kind": "struct",
1864
+ "fields": [
1865
+ {
1866
+ "name": "merchant_amount",
1867
+ "type": "u64"
1868
+ },
1869
+ {
1870
+ "name": "treasury_amount",
1871
+ "type": "u64"
1872
+ },
1873
+ {
1874
+ "name": "ip_creator_amount",
1875
+ "type": "u64"
1876
+ },
1877
+ {
1878
+ "name": "total_amount",
1879
+ "type": "u64"
1880
+ }
1881
+ ]
1882
+ }
1883
+ },
1884
+ {
1885
+ "name": "RouteProfileEntry",
1886
+ "docs": [
1887
+ "One route profile entry."
1888
+ ],
1889
+ "type": {
1890
+ "kind": "struct",
1891
+ "fields": [
1892
+ {
1893
+ "name": "route_id",
1894
+ "type": {
1895
+ "array": [
1896
+ "u8",
1897
+ 32
1898
+ ]
1899
+ }
1900
+ },
1901
+ {
1902
+ "name": "treasury_bps",
1903
+ "type": "u16"
1904
+ },
1905
+ {
1906
+ "name": "ip_creator_bps",
1907
+ "type": "u16"
1908
+ },
1909
+ {
1910
+ "name": "enabled",
1911
+ "type": "bool"
1912
+ },
1913
+ {
1914
+ "name": "configured_at",
1915
+ "type": "i64"
1916
+ },
1917
+ {
1918
+ "name": "route_treasury",
1919
+ "type": "pubkey"
1920
+ }
1921
+ ]
1922
+ }
1923
+ },
1924
+ {
1925
+ "name": "TokenList",
1926
+ "docs": [
1927
+ "Whitelisted stablecoin mints."
1928
+ ],
1929
+ "type": {
1930
+ "kind": "struct",
1931
+ "fields": [
1932
+ {
1933
+ "name": "admin",
1934
+ "type": "pubkey"
1935
+ },
1936
+ {
1937
+ "name": "tokens",
1938
+ "type": {
1939
+ "vec": "pubkey"
1940
+ }
1941
+ },
1942
+ {
1943
+ "name": "bump",
1944
+ "type": "u8"
1945
+ }
1946
+ ]
1947
+ }
1948
+ },
1949
+ {
1950
+ "name": "TreasuryUpdated",
1951
+ "type": {
1952
+ "kind": "struct",
1953
+ "fields": [
1954
+ {
1955
+ "name": "new_treasury",
1956
+ "type": "pubkey"
1957
+ }
1958
+ ]
1959
+ }
1960
+ }
1961
+ ]
1962
+ }