@merkl/api 0.10.152 → 0.10.154

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 (42) hide show
  1. package/dist/src/eden/index.d.ts +53 -34
  2. package/dist/src/index.d.ts +17 -12
  3. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.d.ts +2 -1
  4. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.js +4 -0
  5. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/MaverickBPProcessor.js +0 -1
  6. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/ZkSwapThreePoolProcessor.d.ts +53 -0
  7. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/ZkSwapThreePoolProcessor.js +55 -0
  8. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/processorMapping.js +2 -0
  9. package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1RefactoFinal.js +6 -1
  10. package/dist/src/libs/campaigns/utils/getLastEligibilityRatio.js +15 -6
  11. package/dist/src/modules/v4/campaign/campaign.controller.d.ts +14 -12
  12. package/dist/src/modules/v4/campaign/campaign.controller.js +1 -1
  13. package/dist/src/modules/v4/chainInteraction/chainInteraction.service.d.ts +2 -0
  14. package/dist/src/modules/v4/chainInteraction/chainInteraction.service.js +4 -0
  15. package/dist/src/modules/v4/chainInteraction/index.d.ts +1 -0
  16. package/dist/src/modules/v4/chainInteraction/index.js +1 -0
  17. package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +3 -0
  18. package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +2 -1
  19. package/dist/src/modules/v4/opportunity/opportunity.model.js +2 -1
  20. package/dist/src/modules/v4/opportunity/opportunity.repository.js +1 -0
  21. package/dist/src/modules/v4/router.d.ts +17 -12
  22. package/dist/src/modules/v4/tracer/index.d.ts +1 -0
  23. package/dist/src/modules/v4/tracer/index.js +1 -0
  24. package/dist/src/modules/v4/tracer/tracer.service.d.ts +3 -0
  25. package/dist/src/modules/v4/tracer/tracer.service.js +30 -0
  26. package/dist/src/routes/v3/ERC20Campaigns.d.ts +17 -12
  27. package/dist/src/routes/v3/blacklist.d.ts +17 -12
  28. package/dist/src/routes/v3/campaigns.d.ts +17 -12
  29. package/dist/src/routes/v3/campaignsInfo.d.ts +17 -12
  30. package/dist/src/routes/v3/multiChainPositions.d.ts +17 -12
  31. package/dist/src/routes/v3/opportunity.d.ts +17 -12
  32. package/dist/src/routes/v3/positions.d.ts +17 -12
  33. package/dist/src/routes/v3/rewards.d.ts +17 -12
  34. package/dist/src/routes/v3/updates.d.ts +17 -12
  35. package/dist/src/routes/v3/userRewards.d.ts +17 -12
  36. package/dist/src/utils/decodeCalls.js +7 -1
  37. package/dist/src/utils/encodeCalls.js +19 -1
  38. package/dist/src/utils/generateCardName.js +3 -1
  39. package/dist/tsconfig.package.tsbuildinfo +1 -1
  40. package/package.json +1 -1
  41. package/dist/src/libs/rewards/userRewards.d.ts +0 -2
  42. package/dist/src/libs/rewards/userRewards.js +0 -154
@@ -0,0 +1,3 @@
1
+ export declare class TracerService {
2
+ static createTracedProxy<T extends object>(target: T, serviceName: string): T;
3
+ }
@@ -0,0 +1,30 @@
1
+ import { record } from "@elysiajs/opentelemetry";
2
+ export class TracerService {
3
+ static createTracedProxy(target, serviceName) {
4
+ return new Proxy(target, {
5
+ get(target, property, receiver) {
6
+ const originalMethod = Reflect.get(target, property, receiver);
7
+ if (typeof originalMethod === "function") {
8
+ return function (...args) {
9
+ return record(`${serviceName}.${property}`, async (span) => {
10
+ // Add relevant attributes to the span
11
+ span.setAttribute("service.name", serviceName);
12
+ span.setAttribute("service.method", property);
13
+ try {
14
+ const result = await originalMethod.apply(this, args);
15
+ return result;
16
+ }
17
+ catch (error) {
18
+ span.setStatus({ code: 2 }); // OpenTelemetry StatusCode.ERROR
19
+ span.setAttribute("error.message", error.message);
20
+ span.recordException(error);
21
+ throw error;
22
+ }
23
+ });
24
+ };
25
+ }
26
+ return originalMethod;
27
+ },
28
+ });
29
+ }
30
+ }
@@ -327,6 +327,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
327
327
  action?: string | undefined;
328
328
  mainProtocolId?: string | undefined;
329
329
  order?: undefined;
330
+ minimumTvl?: number | undefined;
330
331
  };
331
332
  headers: unknown;
332
333
  response: {
@@ -435,6 +436,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
435
436
  action?: string | undefined;
436
437
  mainProtocolId?: string | undefined;
437
438
  order?: undefined;
439
+ minimumTvl?: number | undefined;
438
440
  };
439
441
  headers: unknown;
440
442
  response: {
@@ -464,6 +466,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
464
466
  action?: string | undefined;
465
467
  mainProtocolId?: string | undefined;
466
468
  order?: undefined;
469
+ minimumTvl?: number | undefined;
467
470
  };
468
471
  headers: unknown;
469
472
  response: {
@@ -645,18 +648,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
645
648
  };
646
649
  } & {
647
650
  "campaigns-to-process": {
648
- index: {
649
- post: {
650
- body: unknown;
651
- params: {};
652
- query: {
653
- chainId: number;
654
- };
655
- headers: {
656
- authorization: string;
657
- };
658
- response: {
659
- 200: string;
651
+ engine: {
652
+ "": {
653
+ post: {
654
+ body: unknown;
655
+ params: {};
656
+ query: {
657
+ chainId: number;
658
+ };
659
+ headers: {
660
+ authorization: string;
661
+ };
662
+ response: {
663
+ 200: string;
664
+ };
660
665
  };
661
666
  };
662
667
  };
@@ -325,6 +325,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
325
325
  action?: string | undefined;
326
326
  mainProtocolId?: string | undefined;
327
327
  order?: undefined;
328
+ minimumTvl?: number | undefined;
328
329
  };
329
330
  headers: unknown;
330
331
  response: {
@@ -433,6 +434,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
433
434
  action?: string | undefined;
434
435
  mainProtocolId?: string | undefined;
435
436
  order?: undefined;
437
+ minimumTvl?: number | undefined;
436
438
  };
437
439
  headers: unknown;
438
440
  response: {
@@ -462,6 +464,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
462
464
  action?: string | undefined;
463
465
  mainProtocolId?: string | undefined;
464
466
  order?: undefined;
467
+ minimumTvl?: number | undefined;
465
468
  };
466
469
  headers: unknown;
467
470
  response: {
@@ -643,18 +646,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
643
646
  };
644
647
  } & {
645
648
  "campaigns-to-process": {
646
- index: {
647
- post: {
648
- body: unknown;
649
- params: {};
650
- query: {
651
- chainId: number;
652
- };
653
- headers: {
654
- authorization: string;
655
- };
656
- response: {
657
- 200: string;
649
+ engine: {
650
+ "": {
651
+ post: {
652
+ body: unknown;
653
+ params: {};
654
+ query: {
655
+ chainId: number;
656
+ };
657
+ headers: {
658
+ authorization: string;
659
+ };
660
+ response: {
661
+ 200: string;
662
+ };
658
663
  };
659
664
  };
660
665
  };
@@ -328,6 +328,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
328
328
  action?: string | undefined;
329
329
  mainProtocolId?: string | undefined;
330
330
  order?: undefined;
331
+ minimumTvl?: number | undefined;
331
332
  };
332
333
  headers: unknown;
333
334
  response: {
@@ -436,6 +437,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
436
437
  action?: string | undefined;
437
438
  mainProtocolId?: string | undefined;
438
439
  order?: undefined;
440
+ minimumTvl?: number | undefined;
439
441
  };
440
442
  headers: unknown;
441
443
  response: {
@@ -465,6 +467,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
465
467
  action?: string | undefined;
466
468
  mainProtocolId?: string | undefined;
467
469
  order?: undefined;
470
+ minimumTvl?: number | undefined;
468
471
  };
469
472
  headers: unknown;
470
473
  response: {
@@ -646,18 +649,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
646
649
  };
647
650
  } & {
648
651
  "campaigns-to-process": {
649
- index: {
650
- post: {
651
- body: unknown;
652
- params: {};
653
- query: {
654
- chainId: number;
655
- };
656
- headers: {
657
- authorization: string;
658
- };
659
- response: {
660
- 200: string;
652
+ engine: {
653
+ "": {
654
+ post: {
655
+ body: unknown;
656
+ params: {};
657
+ query: {
658
+ chainId: number;
659
+ };
660
+ headers: {
661
+ authorization: string;
662
+ };
663
+ response: {
664
+ 200: string;
665
+ };
661
666
  };
662
667
  };
663
668
  };
@@ -319,6 +319,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
319
319
  action?: string | undefined;
320
320
  mainProtocolId?: string | undefined;
321
321
  order?: undefined;
322
+ minimumTvl?: number | undefined;
322
323
  };
323
324
  headers: unknown;
324
325
  response: {
@@ -427,6 +428,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
427
428
  action?: string | undefined;
428
429
  mainProtocolId?: string | undefined;
429
430
  order?: undefined;
431
+ minimumTvl?: number | undefined;
430
432
  };
431
433
  headers: unknown;
432
434
  response: {
@@ -456,6 +458,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
456
458
  action?: string | undefined;
457
459
  mainProtocolId?: string | undefined;
458
460
  order?: undefined;
461
+ minimumTvl?: number | undefined;
459
462
  };
460
463
  headers: unknown;
461
464
  response: {
@@ -637,18 +640,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
637
640
  };
638
641
  } & {
639
642
  "campaigns-to-process": {
640
- index: {
641
- post: {
642
- body: unknown;
643
- params: {};
644
- query: {
645
- chainId: number;
646
- };
647
- headers: {
648
- authorization: string;
649
- };
650
- response: {
651
- 200: string;
643
+ engine: {
644
+ "": {
645
+ post: {
646
+ body: unknown;
647
+ params: {};
648
+ query: {
649
+ chainId: number;
650
+ };
651
+ headers: {
652
+ authorization: string;
653
+ };
654
+ response: {
655
+ 200: string;
656
+ };
652
657
  };
653
658
  };
654
659
  };
@@ -324,6 +324,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
324
324
  action?: string | undefined;
325
325
  mainProtocolId?: string | undefined;
326
326
  order?: undefined;
327
+ minimumTvl?: number | undefined;
327
328
  };
328
329
  headers: unknown;
329
330
  response: {
@@ -432,6 +433,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
432
433
  action?: string | undefined;
433
434
  mainProtocolId?: string | undefined;
434
435
  order?: undefined;
436
+ minimumTvl?: number | undefined;
435
437
  };
436
438
  headers: unknown;
437
439
  response: {
@@ -461,6 +463,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
461
463
  action?: string | undefined;
462
464
  mainProtocolId?: string | undefined;
463
465
  order?: undefined;
466
+ minimumTvl?: number | undefined;
464
467
  };
465
468
  headers: unknown;
466
469
  response: {
@@ -642,18 +645,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
642
645
  };
643
646
  } & {
644
647
  "campaigns-to-process": {
645
- index: {
646
- post: {
647
- body: unknown;
648
- params: {};
649
- query: {
650
- chainId: number;
651
- };
652
- headers: {
653
- authorization: string;
654
- };
655
- response: {
656
- 200: string;
648
+ engine: {
649
+ "": {
650
+ post: {
651
+ body: unknown;
652
+ params: {};
653
+ query: {
654
+ chainId: number;
655
+ };
656
+ headers: {
657
+ authorization: string;
658
+ };
659
+ response: {
660
+ 200: string;
661
+ };
657
662
  };
658
663
  };
659
664
  };
@@ -342,6 +342,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
342
342
  action?: string | undefined;
343
343
  mainProtocolId?: string | undefined;
344
344
  order?: undefined;
345
+ minimumTvl?: number | undefined;
345
346
  };
346
347
  headers: unknown;
347
348
  response: {
@@ -450,6 +451,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
450
451
  action?: string | undefined;
451
452
  mainProtocolId?: string | undefined;
452
453
  order?: undefined;
454
+ minimumTvl?: number | undefined;
453
455
  };
454
456
  headers: unknown;
455
457
  response: {
@@ -479,6 +481,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
479
481
  action?: string | undefined;
480
482
  mainProtocolId?: string | undefined;
481
483
  order?: undefined;
484
+ minimumTvl?: number | undefined;
482
485
  };
483
486
  headers: unknown;
484
487
  response: {
@@ -660,18 +663,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
660
663
  };
661
664
  } & {
662
665
  "campaigns-to-process": {
663
- index: {
664
- post: {
665
- body: unknown;
666
- params: {};
667
- query: {
668
- chainId: number;
669
- };
670
- headers: {
671
- authorization: string;
672
- };
673
- response: {
674
- 200: string;
666
+ engine: {
667
+ "": {
668
+ post: {
669
+ body: unknown;
670
+ params: {};
671
+ query: {
672
+ chainId: number;
673
+ };
674
+ headers: {
675
+ authorization: string;
676
+ };
677
+ response: {
678
+ 200: string;
679
+ };
675
680
  };
676
681
  };
677
682
  };
@@ -343,6 +343,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
343
343
  action?: string | undefined;
344
344
  mainProtocolId?: string | undefined;
345
345
  order?: undefined;
346
+ minimumTvl?: number | undefined;
346
347
  };
347
348
  headers: unknown;
348
349
  response: {
@@ -451,6 +452,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
451
452
  action?: string | undefined;
452
453
  mainProtocolId?: string | undefined;
453
454
  order?: undefined;
455
+ minimumTvl?: number | undefined;
454
456
  };
455
457
  headers: unknown;
456
458
  response: {
@@ -480,6 +482,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
480
482
  action?: string | undefined;
481
483
  mainProtocolId?: string | undefined;
482
484
  order?: undefined;
485
+ minimumTvl?: number | undefined;
483
486
  };
484
487
  headers: unknown;
485
488
  response: {
@@ -661,18 +664,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
661
664
  };
662
665
  } & {
663
666
  "campaigns-to-process": {
664
- index: {
665
- post: {
666
- body: unknown;
667
- params: {};
668
- query: {
669
- chainId: number;
670
- };
671
- headers: {
672
- authorization: string;
673
- };
674
- response: {
675
- 200: string;
667
+ engine: {
668
+ "": {
669
+ post: {
670
+ body: unknown;
671
+ params: {};
672
+ query: {
673
+ chainId: number;
674
+ };
675
+ headers: {
676
+ authorization: string;
677
+ };
678
+ response: {
679
+ 200: string;
680
+ };
676
681
  };
677
682
  };
678
683
  };
@@ -325,6 +325,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
325
325
  action?: string | undefined;
326
326
  mainProtocolId?: string | undefined;
327
327
  order?: undefined;
328
+ minimumTvl?: number | undefined;
328
329
  };
329
330
  headers: unknown;
330
331
  response: {
@@ -433,6 +434,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
433
434
  action?: string | undefined;
434
435
  mainProtocolId?: string | undefined;
435
436
  order?: undefined;
437
+ minimumTvl?: number | undefined;
436
438
  };
437
439
  headers: unknown;
438
440
  response: {
@@ -462,6 +464,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
462
464
  action?: string | undefined;
463
465
  mainProtocolId?: string | undefined;
464
466
  order?: undefined;
467
+ minimumTvl?: number | undefined;
465
468
  };
466
469
  headers: unknown;
467
470
  response: {
@@ -643,18 +646,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
643
646
  };
644
647
  } & {
645
648
  "campaigns-to-process": {
646
- index: {
647
- post: {
648
- body: unknown;
649
- params: {};
650
- query: {
651
- chainId: number;
652
- };
653
- headers: {
654
- authorization: string;
655
- };
656
- response: {
657
- 200: string;
649
+ engine: {
650
+ "": {
651
+ post: {
652
+ body: unknown;
653
+ params: {};
654
+ query: {
655
+ chainId: number;
656
+ };
657
+ headers: {
658
+ authorization: string;
659
+ };
660
+ response: {
661
+ 200: string;
662
+ };
658
663
  };
659
664
  };
660
665
  };
@@ -326,6 +326,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
326
326
  action?: string | undefined;
327
327
  mainProtocolId?: string | undefined;
328
328
  order?: undefined;
329
+ minimumTvl?: number | undefined;
329
330
  };
330
331
  headers: unknown;
331
332
  response: {
@@ -434,6 +435,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
434
435
  action?: string | undefined;
435
436
  mainProtocolId?: string | undefined;
436
437
  order?: undefined;
438
+ minimumTvl?: number | undefined;
437
439
  };
438
440
  headers: unknown;
439
441
  response: {
@@ -463,6 +465,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
463
465
  action?: string | undefined;
464
466
  mainProtocolId?: string | undefined;
465
467
  order?: undefined;
468
+ minimumTvl?: number | undefined;
466
469
  };
467
470
  headers: unknown;
468
471
  response: {
@@ -644,18 +647,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
644
647
  };
645
648
  } & {
646
649
  "campaigns-to-process": {
647
- index: {
648
- post: {
649
- body: unknown;
650
- params: {};
651
- query: {
652
- chainId: number;
653
- };
654
- headers: {
655
- authorization: string;
656
- };
657
- response: {
658
- 200: string;
650
+ engine: {
651
+ "": {
652
+ post: {
653
+ body: unknown;
654
+ params: {};
655
+ query: {
656
+ chainId: number;
657
+ };
658
+ headers: {
659
+ authorization: string;
660
+ };
661
+ response: {
662
+ 200: string;
663
+ };
659
664
  };
660
665
  };
661
666
  };
@@ -328,6 +328,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
328
328
  action?: string | undefined;
329
329
  mainProtocolId?: string | undefined;
330
330
  order?: undefined;
331
+ minimumTvl?: number | undefined;
331
332
  };
332
333
  headers: unknown;
333
334
  response: {
@@ -436,6 +437,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
436
437
  action?: string | undefined;
437
438
  mainProtocolId?: string | undefined;
438
439
  order?: undefined;
440
+ minimumTvl?: number | undefined;
439
441
  };
440
442
  headers: unknown;
441
443
  response: {
@@ -465,6 +467,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
465
467
  action?: string | undefined;
466
468
  mainProtocolId?: string | undefined;
467
469
  order?: undefined;
470
+ minimumTvl?: number | undefined;
468
471
  };
469
472
  headers: unknown;
470
473
  response: {
@@ -646,18 +649,20 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
646
649
  };
647
650
  } & {
648
651
  "campaigns-to-process": {
649
- index: {
650
- post: {
651
- body: unknown;
652
- params: {};
653
- query: {
654
- chainId: number;
655
- };
656
- headers: {
657
- authorization: string;
658
- };
659
- response: {
660
- 200: string;
652
+ engine: {
653
+ "": {
654
+ post: {
655
+ body: unknown;
656
+ params: {};
657
+ query: {
658
+ chainId: number;
659
+ };
660
+ headers: {
661
+ authorization: string;
662
+ };
663
+ response: {
664
+ 200: string;
665
+ };
661
666
  };
662
667
  };
663
668
  };
@@ -1,4 +1,4 @@
1
- import { AaveInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CompoundInterface, CurveInterface, ERC20Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, RadiantInterface, RfxInterface, SturdyInterface, TorosInterface, UniswapV2PoolInterface, } from "@sdk";
1
+ import { AaveInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CompoundInterface, CurveInterface, ERC20Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, RadiantInterface, RfxInterface, SturdyInterface, TorosInterface, UniswapV2PoolInterface, ZFStableLPINterface, ZFStableSwapThreePoolInterface, } from "@sdk";
2
2
  import { tokenType } from "../libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType";
3
3
  export function decodeCall(calls, index, key, type) {
4
4
  const returnData = calls[index];
@@ -166,6 +166,12 @@ export function decodeCall(calls, index, key, type) {
166
166
  return PendleInterface.decodeFunctionResult("readTokens", returnData)[2];
167
167
  case "boostedPositionInformation":
168
168
  return MaverickBPLensInterface.decodeFunctionResult("boostedPositionInformation", returnData)[0];
169
+ case "coins":
170
+ return ZFStableSwapThreePoolInterface.decodeFunctionResult("coins", returnData)[0];
171
+ case "balances":
172
+ return ZFStableSwapThreePoolInterface.decodeFunctionResult("coins", returnData)[0];
173
+ case "minter":
174
+ return ZFStableLPINterface.decodeFunctionResult("minter", returnData)[0];
169
175
  default:
170
176
  throw new Error(`Key not recognized for ${key}`);
171
177
  }