@nradko/metric-omm-sdk-v1 0.3.0 → 0.4.2

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 (110) hide show
  1. package/README.md +98 -111
  2. package/dist/abis/MetricOmmPool.d.ts +14 -0
  3. package/dist/abis/MetricOmmPool.d.ts.map +1 -1
  4. package/dist/abis/MetricOmmPool.js +18 -0
  5. package/dist/abis/MetricOmmPool.js.map +1 -1
  6. package/dist/abis/MetricOmmPoolDataProvider.d.ts +0 -136
  7. package/dist/abis/MetricOmmPoolDataProvider.d.ts.map +1 -1
  8. package/dist/abis/MetricOmmPoolDataProvider.js +0 -177
  9. package/dist/abis/MetricOmmPoolDataProvider.js.map +1 -1
  10. package/dist/abis/MetricOmmPoolStateView.d.ts +238 -0
  11. package/dist/abis/MetricOmmPoolStateView.d.ts.map +1 -0
  12. package/dist/abis/MetricOmmPoolStateView.js +315 -0
  13. package/dist/abis/MetricOmmPoolStateView.js.map +1 -0
  14. package/dist/abis/MetricOmmSimpleRouter.d.ts +619 -0
  15. package/dist/abis/{MetricOmmPoolSwapper.d.ts.map → MetricOmmSimpleRouter.d.ts.map} +1 -1
  16. package/dist/abis/MetricOmmSimpleRouter.js +805 -0
  17. package/dist/abis/MetricOmmSimpleRouter.js.map +1 -0
  18. package/dist/abis/MetricOmmSwapQuoter.d.ts +576 -0
  19. package/dist/abis/{PriceProviderUi.d.ts.map → MetricOmmSwapQuoter.d.ts.map} +1 -1
  20. package/dist/abis/MetricOmmSwapQuoter.js +748 -0
  21. package/dist/abis/MetricOmmSwapQuoter.js.map +1 -0
  22. package/dist/abis/OracleProvider.d.ts +106 -0
  23. package/dist/abis/OracleProvider.d.ts.map +1 -0
  24. package/dist/abis/OracleProvider.js +62 -0
  25. package/dist/abis/OracleProvider.js.map +1 -0
  26. package/dist/abis/PriceProvider.d.ts +8 -2
  27. package/dist/abis/PriceProvider.d.ts.map +1 -1
  28. package/dist/abis/PriceProvider.js +9 -1
  29. package/dist/abis/PriceProvider.js.map +1 -1
  30. package/dist/abis/index.d.ts +4 -2
  31. package/dist/abis/index.d.ts.map +1 -1
  32. package/dist/abis/index.js +4 -2
  33. package/dist/abis/index.js.map +1 -1
  34. package/dist/addresses.d.ts +3 -3
  35. package/dist/addresses.d.ts.map +1 -1
  36. package/dist/addresses.js +10 -10
  37. package/dist/addresses.js.map +1 -1
  38. package/dist/constants.d.ts +4 -1
  39. package/dist/constants.d.ts.map +1 -1
  40. package/dist/constants.js +7 -2
  41. package/dist/constants.js.map +1 -1
  42. package/dist/index.d.ts +5 -3
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +8 -4
  45. package/dist/index.js.map +1 -1
  46. package/dist/oracle/index.d.ts +5 -0
  47. package/dist/oracle/index.d.ts.map +1 -0
  48. package/dist/oracle/index.js +5 -0
  49. package/dist/oracle/index.js.map +1 -0
  50. package/dist/oracle/registry.d.ts +53 -0
  51. package/dist/oracle/registry.d.ts.map +1 -0
  52. package/dist/oracle/registry.js +70 -0
  53. package/dist/oracle/registry.js.map +1 -0
  54. package/dist/quoter/index.d.ts +6 -0
  55. package/dist/quoter/index.d.ts.map +1 -0
  56. package/dist/quoter/index.js +6 -0
  57. package/dist/quoter/index.js.map +1 -0
  58. package/dist/quoter/quote.d.ts +58 -0
  59. package/dist/quoter/quote.d.ts.map +1 -0
  60. package/dist/quoter/quote.js +74 -0
  61. package/dist/quoter/quote.js.map +1 -0
  62. package/dist/quoter/quotePath.d.ts +65 -0
  63. package/dist/quoter/quotePath.d.ts.map +1 -0
  64. package/dist/quoter/quotePath.js +108 -0
  65. package/dist/quoter/quotePath.js.map +1 -0
  66. package/dist/router/index.d.ts +2 -1
  67. package/dist/router/index.d.ts.map +1 -1
  68. package/dist/router/index.js +2 -1
  69. package/dist/router/index.js.map +1 -1
  70. package/dist/router/swap.d.ts +37 -92
  71. package/dist/router/swap.d.ts.map +1 -1
  72. package/dist/router/swap.js +96 -298
  73. package/dist/router/swap.js.map +1 -1
  74. package/dist/router/swapPath.d.ts +56 -0
  75. package/dist/router/swapPath.d.ts.map +1 -0
  76. package/dist/router/swapPath.js +98 -0
  77. package/dist/router/swapPath.js.map +1 -0
  78. package/dist/swap/path.d.ts +13 -0
  79. package/dist/swap/path.d.ts.map +1 -0
  80. package/dist/swap/path.js +74 -0
  81. package/dist/swap/path.js.map +1 -0
  82. package/package.json +4 -5
  83. package/src/abis/MetricOmmPool.ts +18 -0
  84. package/src/abis/MetricOmmPoolDataProvider.ts +0 -177
  85. package/src/abis/MetricOmmPoolStateView.ts +314 -0
  86. package/src/abis/MetricOmmSimpleRouter.ts +804 -0
  87. package/src/abis/MetricOmmSwapQuoter.ts +747 -0
  88. package/src/abis/OracleProvider.ts +61 -0
  89. package/src/abis/PriceProvider.ts +9 -1
  90. package/src/abis/index.ts +4 -2
  91. package/src/addresses.ts +13 -13
  92. package/src/constants.ts +7 -2
  93. package/src/index.ts +62 -23
  94. package/src/oracle/index.ts +14 -0
  95. package/src/oracle/registry.ts +146 -0
  96. package/src/quoter/index.ts +28 -0
  97. package/src/quoter/quote.ts +193 -0
  98. package/src/quoter/quotePath.ts +240 -0
  99. package/src/router/index.ts +24 -25
  100. package/src/router/swap.ts +142 -480
  101. package/src/router/swapPath.ts +181 -0
  102. package/src/swap/path.ts +107 -0
  103. package/dist/abis/MetricOmmPoolSwapper.d.ts +0 -917
  104. package/dist/abis/MetricOmmPoolSwapper.js +0 -1185
  105. package/dist/abis/MetricOmmPoolSwapper.js.map +0 -1
  106. package/dist/abis/PriceProviderUi.d.ts +0 -433
  107. package/dist/abis/PriceProviderUi.js +0 -318
  108. package/dist/abis/PriceProviderUi.js.map +0 -1
  109. package/src/abis/MetricOmmPoolSwapper.ts +0 -1184
  110. package/src/abis/PriceProviderUi.ts +0 -317
@@ -0,0 +1,747 @@
1
+ export const MetricOmmSwapQuoterAbi = [
2
+ {
3
+ inputs: [
4
+ {
5
+ internalType: "uint128",
6
+ name: "amount",
7
+ type: "uint128",
8
+ },
9
+ ],
10
+ name: "AmountTooLarge",
11
+ type: "error",
12
+ },
13
+ {
14
+ inputs: [],
15
+ name: "HypotheticalQuoteDidNotRevert",
16
+ type: "error",
17
+ },
18
+ {
19
+ inputs: [
20
+ {
21
+ internalType: "uint8",
22
+ name: "hop",
23
+ type: "uint8",
24
+ },
25
+ {
26
+ internalType: "uint256",
27
+ name: "amountIn",
28
+ type: "uint256",
29
+ },
30
+ {
31
+ internalType: "uint256",
32
+ name: "expectedAmountIn",
33
+ type: "uint256",
34
+ },
35
+ ],
36
+ name: "InvalidInputAmountAtHop",
37
+ type: "error",
38
+ },
39
+ {
40
+ inputs: [
41
+ {
42
+ internalType: "uint8",
43
+ name: "hop",
44
+ type: "uint8",
45
+ },
46
+ {
47
+ internalType: "uint256",
48
+ name: "amountOut",
49
+ type: "uint256",
50
+ },
51
+ {
52
+ internalType: "uint256",
53
+ name: "expectedAmountOut",
54
+ type: "uint256",
55
+ },
56
+ ],
57
+ name: "InvalidOutputAmountAtHop",
58
+ type: "error",
59
+ },
60
+ {
61
+ inputs: [],
62
+ name: "InvalidPath",
63
+ type: "error",
64
+ },
65
+ {
66
+ inputs: [
67
+ {
68
+ internalType: "bool",
69
+ name: "zeroForOne",
70
+ type: "bool",
71
+ },
72
+ {
73
+ internalType: "uint128",
74
+ name: "priceLimitX64",
75
+ type: "uint128",
76
+ },
77
+ ],
78
+ name: "InvalidPriceLimitForDirection",
79
+ type: "error",
80
+ },
81
+ {
82
+ inputs: [],
83
+ name: "InvalidSwapDeltas",
84
+ type: "error",
85
+ },
86
+ {
87
+ inputs: [],
88
+ name: "QuoteDidNotRevert",
89
+ type: "error",
90
+ },
91
+ {
92
+ inputs: [
93
+ {
94
+ internalType: "int256",
95
+ name: "amount0Delta",
96
+ type: "int256",
97
+ },
98
+ {
99
+ internalType: "int256",
100
+ name: "amount1Delta",
101
+ type: "int256",
102
+ },
103
+ ],
104
+ name: "QuoteSwapResult",
105
+ type: "error",
106
+ },
107
+ {
108
+ inputs: [
109
+ {
110
+ internalType: "address",
111
+ name: "target",
112
+ type: "address",
113
+ },
114
+ {
115
+ internalType: "bytes4",
116
+ name: "selector",
117
+ type: "bytes4",
118
+ },
119
+ {
120
+ internalType: "bytes",
121
+ name: "reason",
122
+ type: "bytes",
123
+ },
124
+ ],
125
+ name: "WrappedError",
126
+ type: "error",
127
+ },
128
+ {
129
+ inputs: [
130
+ {
131
+ internalType: "int256",
132
+ name: "amount0Delta",
133
+ type: "int256",
134
+ },
135
+ {
136
+ internalType: "int256",
137
+ name: "amount1Delta",
138
+ type: "int256",
139
+ },
140
+ {
141
+ internalType: "bytes",
142
+ name: "",
143
+ type: "bytes",
144
+ },
145
+ ],
146
+ name: "metricOmmSwapCallback",
147
+ outputs: [],
148
+ stateMutability: "nonpayable",
149
+ type: "function",
150
+ },
151
+ {
152
+ inputs: [
153
+ {
154
+ components: [
155
+ {
156
+ internalType: "address[]",
157
+ name: "pools",
158
+ type: "address[]",
159
+ },
160
+ {
161
+ internalType: "bytes[]",
162
+ name: "extensionDatas",
163
+ type: "bytes[]",
164
+ },
165
+ {
166
+ internalType: "uint256",
167
+ name: "zeroForOneBitMap",
168
+ type: "uint256",
169
+ },
170
+ {
171
+ internalType: "uint128",
172
+ name: "amountIn",
173
+ type: "uint128",
174
+ },
175
+ {
176
+ internalType: "uint128[]",
177
+ name: "bidPricesX64",
178
+ type: "uint128[]",
179
+ },
180
+ {
181
+ internalType: "uint128[]",
182
+ name: "askPricesX64",
183
+ type: "uint128[]",
184
+ },
185
+ ],
186
+ internalType: "struct IMetricOmmSwapQuoter.QuoteHypotheticalExactInputParams",
187
+ name: "params",
188
+ type: "tuple",
189
+ },
190
+ ],
191
+ name: "quoteHypotheticalExactInput",
192
+ outputs: [
193
+ {
194
+ internalType: "uint256",
195
+ name: "",
196
+ type: "uint256",
197
+ },
198
+ {
199
+ internalType: "uint256",
200
+ name: "",
201
+ type: "uint256",
202
+ },
203
+ ],
204
+ stateMutability: "nonpayable",
205
+ type: "function",
206
+ },
207
+ {
208
+ inputs: [
209
+ {
210
+ internalType: "address",
211
+ name: "pool",
212
+ type: "address",
213
+ },
214
+ {
215
+ internalType: "address",
216
+ name: "recipient",
217
+ type: "address",
218
+ },
219
+ {
220
+ internalType: "bool",
221
+ name: "zeroForOne",
222
+ type: "bool",
223
+ },
224
+ {
225
+ internalType: "uint128",
226
+ name: "amountIn",
227
+ type: "uint128",
228
+ },
229
+ {
230
+ internalType: "uint128",
231
+ name: "priceLimitX64",
232
+ type: "uint128",
233
+ },
234
+ {
235
+ internalType: "uint128",
236
+ name: "bidPriceX64",
237
+ type: "uint128",
238
+ },
239
+ {
240
+ internalType: "uint128",
241
+ name: "askPriceX64",
242
+ type: "uint128",
243
+ },
244
+ {
245
+ internalType: "bytes",
246
+ name: "extensionData",
247
+ type: "bytes",
248
+ },
249
+ ],
250
+ name: "quoteHypotheticalExactInputSingle",
251
+ outputs: [
252
+ {
253
+ internalType: "uint256",
254
+ name: "",
255
+ type: "uint256",
256
+ },
257
+ {
258
+ internalType: "uint256",
259
+ name: "",
260
+ type: "uint256",
261
+ },
262
+ ],
263
+ stateMutability: "nonpayable",
264
+ type: "function",
265
+ },
266
+ {
267
+ inputs: [
268
+ {
269
+ internalType: "address",
270
+ name: "pool",
271
+ type: "address",
272
+ },
273
+ {
274
+ internalType: "bool",
275
+ name: "zeroForOne",
276
+ type: "bool",
277
+ },
278
+ {
279
+ internalType: "uint128",
280
+ name: "amountIn",
281
+ type: "uint128",
282
+ },
283
+ {
284
+ internalType: "uint128",
285
+ name: "priceLimitX64",
286
+ type: "uint128",
287
+ },
288
+ {
289
+ internalType: "uint128",
290
+ name: "bidPriceX64",
291
+ type: "uint128",
292
+ },
293
+ {
294
+ internalType: "uint128",
295
+ name: "askPriceX64",
296
+ type: "uint128",
297
+ },
298
+ ],
299
+ name: "quoteHypotheticalExactInputSingle",
300
+ outputs: [
301
+ {
302
+ internalType: "uint256",
303
+ name: "",
304
+ type: "uint256",
305
+ },
306
+ {
307
+ internalType: "uint256",
308
+ name: "",
309
+ type: "uint256",
310
+ },
311
+ ],
312
+ stateMutability: "nonpayable",
313
+ type: "function",
314
+ },
315
+ {
316
+ inputs: [
317
+ {
318
+ components: [
319
+ {
320
+ internalType: "address[]",
321
+ name: "pools",
322
+ type: "address[]",
323
+ },
324
+ {
325
+ internalType: "bytes[]",
326
+ name: "extensionDatas",
327
+ type: "bytes[]",
328
+ },
329
+ {
330
+ internalType: "uint256",
331
+ name: "zeroForOneBitMap",
332
+ type: "uint256",
333
+ },
334
+ {
335
+ internalType: "uint128",
336
+ name: "amountOut",
337
+ type: "uint128",
338
+ },
339
+ {
340
+ internalType: "uint128[]",
341
+ name: "bidPricesX64",
342
+ type: "uint128[]",
343
+ },
344
+ {
345
+ internalType: "uint128[]",
346
+ name: "askPricesX64",
347
+ type: "uint128[]",
348
+ },
349
+ ],
350
+ internalType: "struct IMetricOmmSwapQuoter.QuoteHypotheticalExactOutputParams",
351
+ name: "params",
352
+ type: "tuple",
353
+ },
354
+ ],
355
+ name: "quoteHypotheticalExactOutput",
356
+ outputs: [
357
+ {
358
+ internalType: "uint256",
359
+ name: "amountIn",
360
+ type: "uint256",
361
+ },
362
+ {
363
+ internalType: "uint256",
364
+ name: "amountOut",
365
+ type: "uint256",
366
+ },
367
+ ],
368
+ stateMutability: "nonpayable",
369
+ type: "function",
370
+ },
371
+ {
372
+ inputs: [
373
+ {
374
+ internalType: "address",
375
+ name: "pool",
376
+ type: "address",
377
+ },
378
+ {
379
+ internalType: "bool",
380
+ name: "zeroForOne",
381
+ type: "bool",
382
+ },
383
+ {
384
+ internalType: "uint128",
385
+ name: "amountOutDesired",
386
+ type: "uint128",
387
+ },
388
+ {
389
+ internalType: "uint128",
390
+ name: "priceLimitX64",
391
+ type: "uint128",
392
+ },
393
+ {
394
+ internalType: "uint128",
395
+ name: "bidPriceX64",
396
+ type: "uint128",
397
+ },
398
+ {
399
+ internalType: "uint128",
400
+ name: "askPriceX64",
401
+ type: "uint128",
402
+ },
403
+ ],
404
+ name: "quoteHypotheticalExactOutputSingle",
405
+ outputs: [
406
+ {
407
+ internalType: "uint256",
408
+ name: "",
409
+ type: "uint256",
410
+ },
411
+ {
412
+ internalType: "uint256",
413
+ name: "",
414
+ type: "uint256",
415
+ },
416
+ ],
417
+ stateMutability: "nonpayable",
418
+ type: "function",
419
+ },
420
+ {
421
+ inputs: [
422
+ {
423
+ internalType: "address",
424
+ name: "pool",
425
+ type: "address",
426
+ },
427
+ {
428
+ internalType: "address",
429
+ name: "recipient",
430
+ type: "address",
431
+ },
432
+ {
433
+ internalType: "bool",
434
+ name: "zeroForOne",
435
+ type: "bool",
436
+ },
437
+ {
438
+ internalType: "uint128",
439
+ name: "amountOutDesired",
440
+ type: "uint128",
441
+ },
442
+ {
443
+ internalType: "uint128",
444
+ name: "priceLimitX64",
445
+ type: "uint128",
446
+ },
447
+ {
448
+ internalType: "uint128",
449
+ name: "bidPriceX64",
450
+ type: "uint128",
451
+ },
452
+ {
453
+ internalType: "uint128",
454
+ name: "askPriceX64",
455
+ type: "uint128",
456
+ },
457
+ {
458
+ internalType: "bytes",
459
+ name: "extensionData",
460
+ type: "bytes",
461
+ },
462
+ ],
463
+ name: "quoteHypotheticalExactOutputSingle",
464
+ outputs: [
465
+ {
466
+ internalType: "uint256",
467
+ name: "",
468
+ type: "uint256",
469
+ },
470
+ {
471
+ internalType: "uint256",
472
+ name: "",
473
+ type: "uint256",
474
+ },
475
+ ],
476
+ stateMutability: "nonpayable",
477
+ type: "function",
478
+ },
479
+ {
480
+ inputs: [
481
+ {
482
+ components: [
483
+ {
484
+ internalType: "address[]",
485
+ name: "pools",
486
+ type: "address[]",
487
+ },
488
+ {
489
+ internalType: "bytes[]",
490
+ name: "extensionDatas",
491
+ type: "bytes[]",
492
+ },
493
+ {
494
+ internalType: "uint256",
495
+ name: "zeroForOneBitMap",
496
+ type: "uint256",
497
+ },
498
+ {
499
+ internalType: "uint128",
500
+ name: "amountIn",
501
+ type: "uint128",
502
+ },
503
+ ],
504
+ internalType: "struct IMetricOmmSwapQuoter.QuoteExactInputParams",
505
+ name: "params",
506
+ type: "tuple",
507
+ },
508
+ ],
509
+ name: "quoteLiveExactIn",
510
+ outputs: [
511
+ {
512
+ internalType: "uint256",
513
+ name: "",
514
+ type: "uint256",
515
+ },
516
+ {
517
+ internalType: "uint256",
518
+ name: "",
519
+ type: "uint256",
520
+ },
521
+ ],
522
+ stateMutability: "nonpayable",
523
+ type: "function",
524
+ },
525
+ {
526
+ inputs: [
527
+ {
528
+ internalType: "address",
529
+ name: "pool",
530
+ type: "address",
531
+ },
532
+ {
533
+ internalType: "address",
534
+ name: "recipient",
535
+ type: "address",
536
+ },
537
+ {
538
+ internalType: "bool",
539
+ name: "zeroForOne",
540
+ type: "bool",
541
+ },
542
+ {
543
+ internalType: "uint128",
544
+ name: "amountIn",
545
+ type: "uint128",
546
+ },
547
+ {
548
+ internalType: "uint128",
549
+ name: "priceLimitX64",
550
+ type: "uint128",
551
+ },
552
+ {
553
+ internalType: "bytes",
554
+ name: "extensionData",
555
+ type: "bytes",
556
+ },
557
+ ],
558
+ name: "quoteLiveExactInSingle",
559
+ outputs: [
560
+ {
561
+ internalType: "uint256",
562
+ name: "",
563
+ type: "uint256",
564
+ },
565
+ {
566
+ internalType: "uint256",
567
+ name: "",
568
+ type: "uint256",
569
+ },
570
+ ],
571
+ stateMutability: "nonpayable",
572
+ type: "function",
573
+ },
574
+ {
575
+ inputs: [
576
+ {
577
+ internalType: "address",
578
+ name: "pool",
579
+ type: "address",
580
+ },
581
+ {
582
+ internalType: "bool",
583
+ name: "zeroForOne",
584
+ type: "bool",
585
+ },
586
+ {
587
+ internalType: "uint128",
588
+ name: "amountIn",
589
+ type: "uint128",
590
+ },
591
+ {
592
+ internalType: "uint128",
593
+ name: "priceLimitX64",
594
+ type: "uint128",
595
+ },
596
+ ],
597
+ name: "quoteLiveExactInSingle",
598
+ outputs: [
599
+ {
600
+ internalType: "uint256",
601
+ name: "",
602
+ type: "uint256",
603
+ },
604
+ {
605
+ internalType: "uint256",
606
+ name: "",
607
+ type: "uint256",
608
+ },
609
+ ],
610
+ stateMutability: "nonpayable",
611
+ type: "function",
612
+ },
613
+ {
614
+ inputs: [
615
+ {
616
+ components: [
617
+ {
618
+ internalType: "address[]",
619
+ name: "pools",
620
+ type: "address[]",
621
+ },
622
+ {
623
+ internalType: "bytes[]",
624
+ name: "extensionDatas",
625
+ type: "bytes[]",
626
+ },
627
+ {
628
+ internalType: "uint256",
629
+ name: "zeroForOneBitMap",
630
+ type: "uint256",
631
+ },
632
+ {
633
+ internalType: "uint128",
634
+ name: "amountOut",
635
+ type: "uint128",
636
+ },
637
+ ],
638
+ internalType: "struct IMetricOmmSwapQuoter.QuoteExactOutputParams",
639
+ name: "params",
640
+ type: "tuple",
641
+ },
642
+ ],
643
+ name: "quoteLiveExactOut",
644
+ outputs: [
645
+ {
646
+ internalType: "uint256",
647
+ name: "amountIn",
648
+ type: "uint256",
649
+ },
650
+ {
651
+ internalType: "uint256",
652
+ name: "amountOut",
653
+ type: "uint256",
654
+ },
655
+ ],
656
+ stateMutability: "nonpayable",
657
+ type: "function",
658
+ },
659
+ {
660
+ inputs: [
661
+ {
662
+ internalType: "address",
663
+ name: "pool",
664
+ type: "address",
665
+ },
666
+ {
667
+ internalType: "bool",
668
+ name: "zeroForOne",
669
+ type: "bool",
670
+ },
671
+ {
672
+ internalType: "uint128",
673
+ name: "amountOutDesired",
674
+ type: "uint128",
675
+ },
676
+ {
677
+ internalType: "uint128",
678
+ name: "priceLimitX64",
679
+ type: "uint128",
680
+ },
681
+ ],
682
+ name: "quoteLiveExactOutSingle",
683
+ outputs: [
684
+ {
685
+ internalType: "uint256",
686
+ name: "",
687
+ type: "uint256",
688
+ },
689
+ {
690
+ internalType: "uint256",
691
+ name: "",
692
+ type: "uint256",
693
+ },
694
+ ],
695
+ stateMutability: "nonpayable",
696
+ type: "function",
697
+ },
698
+ {
699
+ inputs: [
700
+ {
701
+ internalType: "address",
702
+ name: "pool",
703
+ type: "address",
704
+ },
705
+ {
706
+ internalType: "address",
707
+ name: "recipient",
708
+ type: "address",
709
+ },
710
+ {
711
+ internalType: "bool",
712
+ name: "zeroForOne",
713
+ type: "bool",
714
+ },
715
+ {
716
+ internalType: "uint128",
717
+ name: "amountOutDesired",
718
+ type: "uint128",
719
+ },
720
+ {
721
+ internalType: "uint128",
722
+ name: "priceLimitX64",
723
+ type: "uint128",
724
+ },
725
+ {
726
+ internalType: "bytes",
727
+ name: "extensionData",
728
+ type: "bytes",
729
+ },
730
+ ],
731
+ name: "quoteLiveExactOutSingle",
732
+ outputs: [
733
+ {
734
+ internalType: "uint256",
735
+ name: "",
736
+ type: "uint256",
737
+ },
738
+ {
739
+ internalType: "uint256",
740
+ name: "",
741
+ type: "uint256",
742
+ },
743
+ ],
744
+ stateMutability: "nonpayable",
745
+ type: "function",
746
+ },
747
+ ] as const;