@0block.io/sdk 0.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.
@@ -0,0 +1,557 @@
1
+ export declare const ROUTER_EVENTS_IDL: {
2
+ readonly address: "zeroRxfemoQCz6JT7RyShjuuRCN7VZof1WSekfXhmEn";
3
+ readonly metadata: {
4
+ readonly name: "zeroblock_solana_dex_router";
5
+ readonly version: "0.1.0";
6
+ readonly spec: "0.1.0";
7
+ readonly description: "0block Solana DEX Router";
8
+ };
9
+ readonly instructions: readonly [];
10
+ readonly accounts: readonly [];
11
+ readonly events: readonly [{
12
+ readonly name: "SwapResultEvent";
13
+ readonly discriminator: readonly [65, 188, 138, 167, 38, 187, 55, 46];
14
+ }];
15
+ readonly errors: readonly [];
16
+ readonly types: readonly [{
17
+ readonly name: "CommissionBreakdown";
18
+ readonly type: {
19
+ readonly kind: "struct";
20
+ readonly fields: readonly [{
21
+ readonly name: "fee_mint";
22
+ readonly type: "pubkey";
23
+ }, {
24
+ readonly name: "fee_source";
25
+ readonly type: {
26
+ readonly defined: {
27
+ readonly name: "FeeSource";
28
+ };
29
+ };
30
+ }, {
31
+ readonly name: "fee_base_amount";
32
+ readonly type: "u64";
33
+ }, {
34
+ readonly name: "total_fee_amount";
35
+ readonly type: "u64";
36
+ }, {
37
+ readonly name: "items";
38
+ readonly type: {
39
+ readonly vec: {
40
+ readonly defined: {
41
+ readonly name: "CommissionItem";
42
+ };
43
+ };
44
+ };
45
+ }];
46
+ };
47
+ }, {
48
+ readonly name: "CommissionItem";
49
+ readonly type: {
50
+ readonly kind: "struct";
51
+ readonly fields: readonly [{
52
+ readonly name: "kind";
53
+ readonly type: {
54
+ readonly defined: {
55
+ readonly name: "CommissionType";
56
+ };
57
+ };
58
+ }, {
59
+ readonly name: "bps";
60
+ readonly type: "u16";
61
+ }, {
62
+ readonly name: "amount";
63
+ readonly type: "u64";
64
+ }, {
65
+ readonly name: "tenant_program";
66
+ readonly docs: readonly ["Tenant wrapper program id for TENANT commissions; default pubkey for PLATFORM."];
67
+ readonly type: "pubkey";
68
+ }];
69
+ };
70
+ }, {
71
+ readonly name: "CommissionType";
72
+ readonly type: {
73
+ readonly kind: "enum";
74
+ readonly variants: readonly [{
75
+ readonly name: "Platform";
76
+ }, {
77
+ readonly name: "Tenant";
78
+ }];
79
+ };
80
+ }, {
81
+ readonly name: "Dex";
82
+ readonly docs: readonly ["Which DEX / adapter to call for each hop."];
83
+ readonly type: {
84
+ readonly kind: "enum";
85
+ readonly variants: readonly [{
86
+ readonly name: "SplTokenSwap";
87
+ }, {
88
+ readonly name: "StableSwap";
89
+ }, {
90
+ readonly name: "Whirlpool";
91
+ }, {
92
+ readonly name: "MeteoraDynamicpool";
93
+ }, {
94
+ readonly name: "RaydiumSwap";
95
+ }, {
96
+ readonly name: "RaydiumStableSwap";
97
+ }, {
98
+ readonly name: "RaydiumClmmSwap";
99
+ }, {
100
+ readonly name: "AldrinExchangeV1";
101
+ }, {
102
+ readonly name: "AldrinExchangeV2";
103
+ }, {
104
+ readonly name: "LifinityV1";
105
+ }, {
106
+ readonly name: "LifinityV2";
107
+ }, {
108
+ readonly name: "RaydiumClmmSwapV2";
109
+ }, {
110
+ readonly name: "FluxBeam";
111
+ }, {
112
+ readonly name: "MeteoraDlmm";
113
+ }, {
114
+ readonly name: "RaydiumCpmmSwap";
115
+ }, {
116
+ readonly name: "OpenBookV2";
117
+ }, {
118
+ readonly name: "WhirlpoolV2";
119
+ }, {
120
+ readonly name: "Phoenix";
121
+ }, {
122
+ readonly name: "ObricV2";
123
+ }, {
124
+ readonly name: "SanctumAddLiq";
125
+ }, {
126
+ readonly name: "SanctumRemoveLiq";
127
+ }, {
128
+ readonly name: "SanctumNonWsolSwap";
129
+ }, {
130
+ readonly name: "SanctumWsolSwap";
131
+ }, {
132
+ readonly name: "PumpfunBuy";
133
+ }, {
134
+ readonly name: "PumpfunSell";
135
+ }, {
136
+ readonly name: "StabbleSwap";
137
+ }, {
138
+ readonly name: "SanctumRouter";
139
+ }, {
140
+ readonly name: "MeteoraVaultDeposit";
141
+ }, {
142
+ readonly name: "MeteoraVaultWithdraw";
143
+ }, {
144
+ readonly name: "Saros";
145
+ }, {
146
+ readonly name: "MeteoraLst";
147
+ }, {
148
+ readonly name: "Solfi";
149
+ }, {
150
+ readonly name: "QualiaSwap";
151
+ }, {
152
+ readonly name: "Zerofi";
153
+ }, {
154
+ readonly name: "PumpfunammBuy";
155
+ }, {
156
+ readonly name: "PumpfunammSell";
157
+ }, {
158
+ readonly name: "Virtuals";
159
+ }, {
160
+ readonly name: "VertigoBuy";
161
+ }, {
162
+ readonly name: "VertigoSell";
163
+ }, {
164
+ readonly name: "PerpetualsAddLiq";
165
+ }, {
166
+ readonly name: "PerpetualsRemoveLiq";
167
+ }, {
168
+ readonly name: "PerpetualsSwap";
169
+ }, {
170
+ readonly name: "RaydiumLaunchpad";
171
+ }, {
172
+ readonly name: "LetsBonkFun";
173
+ }, {
174
+ readonly name: "Woofi";
175
+ }, {
176
+ readonly name: "MeteoraDbc";
177
+ }, {
178
+ readonly name: "MeteoraDlmmSwap2";
179
+ }, {
180
+ readonly name: "MeteoraDAMMV2";
181
+ }, {
182
+ readonly name: "Gavel";
183
+ }, {
184
+ readonly name: "BoopfunBuy";
185
+ }, {
186
+ readonly name: "BoopfunSell";
187
+ }, {
188
+ readonly name: "MeteoraDbc2";
189
+ }, {
190
+ readonly name: "GooseFX";
191
+ }, {
192
+ readonly name: "Dooar";
193
+ }, {
194
+ readonly name: "Numeraire";
195
+ }, {
196
+ readonly name: "SaberDecimalWrapperDeposit";
197
+ }, {
198
+ readonly name: "SaberDecimalWrapperWithdraw";
199
+ }, {
200
+ readonly name: "SarosDlmm";
201
+ }, {
202
+ readonly name: "OneDexSwap";
203
+ }, {
204
+ readonly name: "Manifest";
205
+ }, {
206
+ readonly name: "ByrealClmm";
207
+ }, {
208
+ readonly name: "PancakeSwapV3Swap";
209
+ }, {
210
+ readonly name: "PancakeSwapV3SwapV2";
211
+ }, {
212
+ readonly name: "Tessera";
213
+ }, {
214
+ readonly name: "SolRfq";
215
+ }];
216
+ };
217
+ }, {
218
+ readonly name: "FeeSource";
219
+ readonly type: {
220
+ readonly kind: "enum";
221
+ readonly variants: readonly [{
222
+ readonly name: "Input";
223
+ }, {
224
+ readonly name: "Output";
225
+ }];
226
+ };
227
+ }, {
228
+ readonly name: "GlobalConfig";
229
+ readonly docs: readonly ["----------------------------------------------------------------------------", "GlobalConfig (zero_copy, fixed-size, upgrade-safe)", "----------------------------------------------------------------------------"];
230
+ readonly serialization: "bytemuckunsafe";
231
+ readonly repr: {
232
+ readonly kind: "c";
233
+ };
234
+ readonly type: {
235
+ readonly kind: "struct";
236
+ readonly fields: readonly [{
237
+ readonly name: "bump";
238
+ readonly docs: readonly ["PDA bump"];
239
+ readonly type: "u8";
240
+ }, {
241
+ readonly name: "admin";
242
+ readonly docs: readonly ["Program admin (controls global/tenant settings)"];
243
+ readonly type: "pubkey";
244
+ }, {
245
+ readonly name: "zeroblock_fee_bps";
246
+ readonly docs: readonly ["0BLOCK platform fee default (bps out of 10_000)"];
247
+ readonly type: "u16";
248
+ }, {
249
+ readonly name: "zeroblock_fee_vault";
250
+ readonly docs: readonly ["Fee authority that owns 0BLOCK fee token accounts"];
251
+ readonly type: "pubkey";
252
+ }, {
253
+ readonly name: "padding";
254
+ readonly docs: readonly ["Reserved to keep struct size stable for future upgrades"];
255
+ readonly type: {
256
+ readonly array: readonly ["u8", 160];
257
+ };
258
+ }];
259
+ };
260
+ }, {
261
+ readonly name: "InitGlobalConfigEvent";
262
+ readonly docs: readonly ["----------------------------------------------------------------------------", "Global config events", "----------------------------------------------------------------------------"];
263
+ readonly type: {
264
+ readonly kind: "struct";
265
+ readonly fields: readonly [{
266
+ readonly name: "admin";
267
+ readonly type: "pubkey";
268
+ }, {
269
+ readonly name: "zeroblock_fee_bps";
270
+ readonly type: "u16";
271
+ }, {
272
+ readonly name: "zeroblock_fee_vault";
273
+ readonly docs: readonly ["Fee owner that receives 0BLOCK's platform fees (token accounts owned by this key)"];
274
+ readonly type: "pubkey";
275
+ }];
276
+ };
277
+ }, {
278
+ readonly name: "Route";
279
+ readonly type: {
280
+ readonly kind: "struct";
281
+ readonly fields: readonly [{
282
+ readonly name: "dexes";
283
+ readonly type: {
284
+ readonly vec: {
285
+ readonly defined: {
286
+ readonly name: "Dex";
287
+ };
288
+ };
289
+ };
290
+ }, {
291
+ readonly name: "weights";
292
+ readonly type: "bytes";
293
+ }];
294
+ };
295
+ }, {
296
+ readonly name: "SetAdminEvent";
297
+ readonly type: {
298
+ readonly kind: "struct";
299
+ readonly fields: readonly [{
300
+ readonly name: "admin";
301
+ readonly type: "pubkey";
302
+ }];
303
+ };
304
+ }, {
305
+ readonly name: "SetZeroblockFeeBpsEvent";
306
+ readonly type: {
307
+ readonly kind: "struct";
308
+ readonly fields: readonly [{
309
+ readonly name: "zeroblock_fee_bps";
310
+ readonly type: "u16";
311
+ }];
312
+ };
313
+ }, {
314
+ readonly name: "SetZeroblockFeeVaultEvent";
315
+ readonly type: {
316
+ readonly kind: "struct";
317
+ readonly fields: readonly [{
318
+ readonly name: "zeroblock_fee_vault";
319
+ readonly type: "pubkey";
320
+ }];
321
+ };
322
+ }, {
323
+ readonly name: "Slippage";
324
+ readonly type: {
325
+ readonly kind: "enum";
326
+ readonly variants: readonly [{
327
+ readonly name: "Bps";
328
+ readonly fields: readonly [{
329
+ readonly name: "bps";
330
+ readonly type: "u16";
331
+ }, {
332
+ readonly name: "expect_amount_out";
333
+ readonly type: "u64";
334
+ }];
335
+ }, {
336
+ readonly name: "MinOut";
337
+ readonly fields: readonly ["u64"];
338
+ }];
339
+ };
340
+ }, {
341
+ readonly name: "SwapArgs";
342
+ readonly type: {
343
+ readonly kind: "struct";
344
+ readonly fields: readonly [{
345
+ readonly name: "amount_in";
346
+ readonly type: "u64";
347
+ }, {
348
+ readonly name: "min_return";
349
+ readonly type: "u64";
350
+ }, {
351
+ readonly name: "amounts";
352
+ readonly type: {
353
+ readonly vec: "u64";
354
+ };
355
+ }, {
356
+ readonly name: "routes";
357
+ readonly type: {
358
+ readonly vec: {
359
+ readonly vec: {
360
+ readonly defined: {
361
+ readonly name: "Route";
362
+ };
363
+ };
364
+ };
365
+ };
366
+ }, {
367
+ readonly name: "options";
368
+ readonly type: {
369
+ readonly option: {
370
+ readonly defined: {
371
+ readonly name: "SwapOptions";
372
+ };
373
+ };
374
+ };
375
+ }];
376
+ };
377
+ }, {
378
+ readonly name: "SwapExecution";
379
+ readonly type: {
380
+ readonly kind: "struct";
381
+ readonly fields: readonly [{
382
+ readonly name: "amount_in";
383
+ readonly type: "u64";
384
+ }, {
385
+ readonly name: "amount_out";
386
+ readonly type: "u64";
387
+ }, {
388
+ readonly name: "min_return";
389
+ readonly type: "u64";
390
+ }, {
391
+ readonly name: "expect_amount_out";
392
+ readonly type: "u64";
393
+ }, {
394
+ readonly name: "legs";
395
+ readonly type: {
396
+ readonly vec: {
397
+ readonly defined: {
398
+ readonly name: "SwapLeg";
399
+ };
400
+ };
401
+ };
402
+ }];
403
+ };
404
+ }, {
405
+ readonly name: "SwapFailure";
406
+ readonly type: {
407
+ readonly kind: "struct";
408
+ readonly fields: readonly [{
409
+ readonly name: "code";
410
+ readonly type: "u64";
411
+ }, {
412
+ readonly name: "message";
413
+ readonly type: "string";
414
+ }];
415
+ };
416
+ }, {
417
+ readonly name: "SwapLeg";
418
+ readonly type: {
419
+ readonly kind: "struct";
420
+ readonly fields: readonly [{
421
+ readonly name: "dex";
422
+ readonly type: {
423
+ readonly defined: {
424
+ readonly name: "Dex";
425
+ };
426
+ };
427
+ }, {
428
+ readonly name: "amount_in";
429
+ readonly type: "u64";
430
+ }, {
431
+ readonly name: "amount_out";
432
+ readonly type: "u64";
433
+ }, {
434
+ readonly name: "route_index";
435
+ readonly type: "u16";
436
+ }, {
437
+ readonly name: "hop_index";
438
+ readonly type: "u16";
439
+ }, {
440
+ readonly name: "fork_index";
441
+ readonly type: "u16";
442
+ }];
443
+ };
444
+ }, {
445
+ readonly name: "SwapOptions";
446
+ readonly type: {
447
+ readonly kind: "struct";
448
+ readonly fields: readonly [{
449
+ readonly name: "slippage";
450
+ readonly type: {
451
+ readonly option: {
452
+ readonly defined: {
453
+ readonly name: "Slippage";
454
+ };
455
+ };
456
+ };
457
+ }];
458
+ };
459
+ }, {
460
+ readonly name: "SwapResultData";
461
+ readonly docs: readonly ["----------------------------------------------------------------------------", "Swap result event (single event per attempt)", "----------------------------------------------------------------------------"];
462
+ readonly type: {
463
+ readonly kind: "enum";
464
+ readonly variants: readonly [{
465
+ readonly name: "Success";
466
+ readonly fields: readonly [{
467
+ readonly defined: {
468
+ readonly name: "SwapSuccess";
469
+ };
470
+ }];
471
+ }, {
472
+ readonly name: "Failure";
473
+ readonly fields: readonly [{
474
+ readonly defined: {
475
+ readonly name: "SwapFailure";
476
+ };
477
+ }];
478
+ }];
479
+ };
480
+ }, {
481
+ readonly name: "SwapResultEvent";
482
+ readonly type: {
483
+ readonly kind: "struct";
484
+ readonly fields: readonly [{
485
+ readonly name: "order_id";
486
+ readonly type: "u128";
487
+ }, {
488
+ readonly name: "data";
489
+ readonly type: {
490
+ readonly defined: {
491
+ readonly name: "SwapResultData";
492
+ };
493
+ };
494
+ }];
495
+ };
496
+ }, {
497
+ readonly name: "SwapSuccess";
498
+ readonly type: {
499
+ readonly kind: "struct";
500
+ readonly fields: readonly [{
501
+ readonly name: "swap";
502
+ readonly type: {
503
+ readonly defined: {
504
+ readonly name: "SwapExecution";
505
+ };
506
+ };
507
+ }, {
508
+ readonly name: "commissions";
509
+ readonly type: {
510
+ readonly defined: {
511
+ readonly name: "CommissionBreakdown";
512
+ };
513
+ };
514
+ }];
515
+ };
516
+ }, {
517
+ readonly name: "TenantConfig";
518
+ readonly docs: readonly ["----------------------------------------------------------------------------", "TenantConfig (+ strict wrapper enforcement)", "----------------------------------------------------------------------------"];
519
+ readonly type: {
520
+ readonly kind: "struct";
521
+ readonly fields: readonly [{
522
+ readonly name: "bump";
523
+ readonly type: "u8";
524
+ }, {
525
+ readonly name: "tenant_authority";
526
+ readonly docs: readonly ["Signer (EOA or PDA) authorized to act for this tenant"];
527
+ readonly type: "pubkey";
528
+ }, {
529
+ readonly name: "tenant_wrapper_program";
530
+ readonly docs: readonly ["Wrapper program id used to validate tenant-mode calls."];
531
+ readonly type: "pubkey";
532
+ }, {
533
+ readonly name: "zeroblock_fee_bps";
534
+ readonly docs: readonly ["0BLOCK fee (bps out of 10_000) for this tenant. Use 0 to fall back to global default."];
535
+ readonly type: "u16";
536
+ }, {
537
+ readonly name: "tenant_fee_vault";
538
+ readonly docs: readonly ["Fee authority that owns tenant fee token accounts"];
539
+ readonly type: "pubkey";
540
+ }, {
541
+ readonly name: "whitelisted";
542
+ readonly docs: readonly ["Whether this tenant is active/whitelisted"];
543
+ readonly type: "bool";
544
+ }, {
545
+ readonly name: "max_total_fee_bps";
546
+ readonly docs: readonly ["Optional per-tenant cap: (tenant_fee_bps + zeroblock_fee_bps) must be <= this if > 0.", "tenant_fee_bps is supplied per swap."];
547
+ readonly type: "u16";
548
+ }, {
549
+ readonly name: "_reserved";
550
+ readonly docs: readonly ["Reserved for upgrades (fixed size)"];
551
+ readonly type: {
552
+ readonly array: readonly ["u8", 64];
553
+ };
554
+ }];
555
+ };
556
+ }];
557
+ };