@enzymefinance/testutils 4.0.0-next.7 → 4.0.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.
@@ -4,10 +4,7 @@ import type { SignerWithAddress } from '@enzymefinance/hardhat';
4
4
  import type {
5
5
  ComptrollerLib,
6
6
  CurveExchangeAdapter,
7
- CurveLiquidityAaveAdapter,
8
7
  CurveLiquidityAdapter,
9
- CurveLiquiditySethAdapter,
10
- CurveLiquidityStethAdapter,
11
8
  CurveRedeemType,
12
9
  IntegrationManager,
13
10
  StandardToken,
@@ -15,29 +12,11 @@ import type {
15
12
  import {
16
13
  callOnIntegrationArgs,
17
14
  claimRewardsSelector,
18
- curveAaveLendAndStakeArgs,
19
- curveAaveLendArgs,
20
- curveAaveRedeemArgs,
21
- curveAaveStakeArgs,
22
- curveAaveUnstakeAndRedeemArgs,
23
- curveAaveUnstakeArgs,
24
15
  curveClaimRewardsArgs,
25
16
  curveLendAndStakeArgs,
26
17
  curveLendArgs,
27
18
  curveRedeemArgs,
28
- curveSethLendAndStakeArgs,
29
- curveSethLendArgs,
30
- curveSethRedeemArgs,
31
- curveSethStakeArgs,
32
- curveSethUnstakeAndRedeemArgs,
33
- curveSethUnstakeArgs,
34
19
  curveStakeArgs,
35
- curveStethLendAndStakeArgs,
36
- curveStethLendArgs,
37
- curveStethRedeemArgs,
38
- curveStethStakeArgs,
39
- curveStethUnstakeAndRedeemArgs,
40
- curveStethUnstakeArgs,
41
20
  curveTakeOrderArgs,
42
21
  curveUnstakeAndRedeemArgs,
43
22
  curveUnstakeArgs,
@@ -51,7 +30,7 @@ import {
51
30
  unstakeSelector,
52
31
  } from '@enzymefinance/protocol';
53
32
  import type { BigNumberish, BytesLike } from 'ethers';
54
- import { BigNumber, constants, utils } from 'ethers';
33
+ import { BigNumber, utils } from 'ethers';
55
34
 
56
35
  export interface CurveLiquidityGaugeV2 extends Contract<CurveLiquidityGaugeV2> {
57
36
  claim_rewards: Send<(_addr: AddressLike) => void>;
@@ -373,657 +352,3 @@ export async function curveUnstakeAndRedeem({
373
352
  .connect(signer)
374
353
  .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
375
354
  }
376
-
377
- // aave pool
378
-
379
- export function curveAaveClaimRewards({
380
- comptrollerProxy,
381
- integrationManager,
382
- fundOwner,
383
- curveLiquidityAaveAdapter,
384
- }: {
385
- comptrollerProxy: ComptrollerLib;
386
- integrationManager: IntegrationManager;
387
- fundOwner: SignerWithAddress;
388
- curveLiquidityAaveAdapter: CurveLiquidityAaveAdapter;
389
- }) {
390
- const callArgs = callOnIntegrationArgs({
391
- adapter: curveLiquidityAaveAdapter,
392
- encodedCallArgs: constants.HashZero,
393
- selector: claimRewardsSelector,
394
- });
395
-
396
- return comptrollerProxy
397
- .connect(fundOwner)
398
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
399
- }
400
-
401
- export function curveAaveLend({
402
- comptrollerProxy,
403
- integrationManager,
404
- fundOwner,
405
- curveLiquidityAaveAdapter,
406
- outgoingAaveDaiAmount = BigNumber.from(0),
407
- outgoingAaveUsdcAmount = BigNumber.from(0),
408
- outgoingAaveUsdtAmount = BigNumber.from(0),
409
- minIncomingLPTokenAmount = BigNumber.from(1),
410
- useUnderlyings = false,
411
- }: {
412
- comptrollerProxy: ComptrollerLib;
413
- integrationManager: IntegrationManager;
414
- fundOwner: SignerWithAddress;
415
- curveLiquidityAaveAdapter: CurveLiquidityAaveAdapter;
416
- outgoingAaveDaiAmount?: BigNumberish;
417
- outgoingAaveUsdcAmount?: BigNumberish;
418
- outgoingAaveUsdtAmount?: BigNumberish;
419
- minIncomingLPTokenAmount?: BigNumberish;
420
- useUnderlyings?: boolean;
421
- }) {
422
- const callArgs = callOnIntegrationArgs({
423
- adapter: curveLiquidityAaveAdapter,
424
- encodedCallArgs: curveAaveLendArgs({
425
- minIncomingLPTokenAmount,
426
- outgoingAaveDaiAmount,
427
- outgoingAaveUsdcAmount,
428
- outgoingAaveUsdtAmount,
429
- useUnderlyings,
430
- }),
431
- selector: lendSelector,
432
- });
433
-
434
- return comptrollerProxy
435
- .connect(fundOwner)
436
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
437
- }
438
-
439
- export function curveAaveLendAndStake({
440
- comptrollerProxy,
441
- integrationManager,
442
- fundOwner,
443
- curveLiquidityAaveAdapter,
444
- outgoingAaveDaiAmount = BigNumber.from(0),
445
- outgoingAaveUsdcAmount = BigNumber.from(0),
446
- outgoingAaveUsdtAmount = BigNumber.from(0),
447
- minIncomingLiquidityGaugeTokenAmount = BigNumber.from(1),
448
- useUnderlyings = false,
449
- }: {
450
- comptrollerProxy: ComptrollerLib;
451
- integrationManager: IntegrationManager;
452
- fundOwner: SignerWithAddress;
453
- curveLiquidityAaveAdapter: CurveLiquidityAaveAdapter;
454
- outgoingAaveDaiAmount?: BigNumberish;
455
- outgoingAaveUsdcAmount?: BigNumberish;
456
- outgoingAaveUsdtAmount?: BigNumberish;
457
- minIncomingLiquidityGaugeTokenAmount?: BigNumberish;
458
- useUnderlyings?: boolean;
459
- }) {
460
- const callArgs = callOnIntegrationArgs({
461
- adapter: curveLiquidityAaveAdapter,
462
- encodedCallArgs: curveAaveLendAndStakeArgs({
463
- minIncomingLiquidityGaugeTokenAmount,
464
- outgoingAaveDaiAmount,
465
- outgoingAaveUsdcAmount,
466
- outgoingAaveUsdtAmount,
467
- useUnderlyings,
468
- }),
469
- selector: lendAndStakeSelector,
470
- });
471
-
472
- return comptrollerProxy
473
- .connect(fundOwner)
474
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
475
- }
476
-
477
- export function curveAaveRedeem({
478
- comptrollerProxy,
479
- integrationManager,
480
- fundOwner,
481
- curveLiquidityAaveAdapter,
482
- outgoingLPTokenAmount,
483
- minIncomingAaveDaiAmount = BigNumber.from(1),
484
- minIncomingAaveUsdcAmount = BigNumber.from(1),
485
- minIncomingAaveUsdtAmount = BigNumber.from(1),
486
- receiveSingleAsset = false,
487
- useUnderlyings = false,
488
- }: {
489
- comptrollerProxy: ComptrollerLib;
490
- integrationManager: IntegrationManager;
491
- fundOwner: SignerWithAddress;
492
- curveLiquidityAaveAdapter: CurveLiquidityAaveAdapter;
493
- outgoingLPTokenAmount: BigNumberish;
494
- minIncomingAaveDaiAmount?: BigNumberish;
495
- minIncomingAaveUsdcAmount?: BigNumberish;
496
- minIncomingAaveUsdtAmount?: BigNumberish;
497
- receiveSingleAsset?: boolean;
498
- useUnderlyings?: boolean;
499
- }) {
500
- const callArgs = callOnIntegrationArgs({
501
- adapter: curveLiquidityAaveAdapter,
502
- encodedCallArgs: curveAaveRedeemArgs({
503
- minIncomingAaveDaiAmount,
504
- minIncomingAaveUsdcAmount,
505
- minIncomingAaveUsdtAmount,
506
- outgoingLPTokenAmount,
507
- receiveSingleAsset,
508
- useUnderlyings,
509
- }),
510
- selector: redeemSelector,
511
- });
512
-
513
- return comptrollerProxy
514
- .connect(fundOwner)
515
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
516
- }
517
-
518
- export function curveAaveStake({
519
- comptrollerProxy,
520
- integrationManager,
521
- fundOwner,
522
- curveLiquidityAaveAdapter,
523
- outgoingLPTokenAmount,
524
- }: {
525
- comptrollerProxy: ComptrollerLib;
526
- integrationManager: IntegrationManager;
527
- fundOwner: SignerWithAddress;
528
- curveLiquidityAaveAdapter: CurveLiquidityAaveAdapter;
529
- outgoingLPTokenAmount: BigNumberish;
530
- }) {
531
- const callArgs = callOnIntegrationArgs({
532
- adapter: curveLiquidityAaveAdapter,
533
- encodedCallArgs: curveAaveStakeArgs({
534
- outgoingLPTokenAmount,
535
- }),
536
- selector: stakeSelector,
537
- });
538
-
539
- return comptrollerProxy
540
- .connect(fundOwner)
541
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
542
- }
543
-
544
- export function curveAaveUnstakeAndRedeem({
545
- comptrollerProxy,
546
- integrationManager,
547
- fundOwner,
548
- curveLiquidityAaveAdapter,
549
- outgoingLiquidityGaugeTokenAmount,
550
- minIncomingAaveDaiAmount = BigNumber.from(1),
551
- minIncomingAaveUsdcAmount = BigNumber.from(1),
552
- minIncomingAaveUsdtAmount = BigNumber.from(1),
553
- receiveSingleAsset = false,
554
- useUnderlyings = false,
555
- }: {
556
- comptrollerProxy: ComptrollerLib;
557
- integrationManager: IntegrationManager;
558
- fundOwner: SignerWithAddress;
559
- curveLiquidityAaveAdapter: CurveLiquidityAaveAdapter;
560
- outgoingLiquidityGaugeTokenAmount: BigNumberish;
561
- minIncomingAaveDaiAmount?: BigNumberish;
562
- minIncomingAaveUsdcAmount?: BigNumberish;
563
- minIncomingAaveUsdtAmount?: BigNumberish;
564
- receiveSingleAsset?: boolean;
565
- useUnderlyings?: boolean;
566
- }) {
567
- const callArgs = callOnIntegrationArgs({
568
- adapter: curveLiquidityAaveAdapter,
569
- encodedCallArgs: curveAaveUnstakeAndRedeemArgs({
570
- minIncomingAaveDaiAmount,
571
- minIncomingAaveUsdcAmount,
572
- minIncomingAaveUsdtAmount,
573
- outgoingLiquidityGaugeTokenAmount,
574
- receiveSingleAsset,
575
- useUnderlyings,
576
- }),
577
- selector: unstakeAndRedeemSelector,
578
- });
579
-
580
- return comptrollerProxy
581
- .connect(fundOwner)
582
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
583
- }
584
-
585
- export function curveAaveUnstake({
586
- comptrollerProxy,
587
- integrationManager,
588
- fundOwner,
589
- curveLiquidityAaveAdapter,
590
- outgoingLiquidityGaugeTokenAmount,
591
- }: {
592
- comptrollerProxy: ComptrollerLib;
593
- integrationManager: IntegrationManager;
594
- fundOwner: SignerWithAddress;
595
- curveLiquidityAaveAdapter: CurveLiquidityAaveAdapter;
596
- outgoingLiquidityGaugeTokenAmount: BigNumberish;
597
- }) {
598
- const callArgs = callOnIntegrationArgs({
599
- adapter: curveLiquidityAaveAdapter,
600
- encodedCallArgs: curveAaveUnstakeArgs({
601
- outgoingLiquidityGaugeTokenAmount,
602
- }),
603
- selector: unstakeSelector,
604
- });
605
-
606
- return comptrollerProxy
607
- .connect(fundOwner)
608
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
609
- }
610
-
611
- // sETH pool
612
-
613
- export function curveSethClaimRewards({
614
- comptrollerProxy,
615
- integrationManager,
616
- fundOwner,
617
- curveLiquiditySethAdapter,
618
- }: {
619
- comptrollerProxy: ComptrollerLib;
620
- integrationManager: IntegrationManager;
621
- fundOwner: SignerWithAddress;
622
- curveLiquiditySethAdapter: CurveLiquiditySethAdapter;
623
- }) {
624
- const callArgs = callOnIntegrationArgs({
625
- adapter: curveLiquiditySethAdapter,
626
- encodedCallArgs: constants.HashZero,
627
- selector: claimRewardsSelector,
628
- });
629
-
630
- return comptrollerProxy
631
- .connect(fundOwner)
632
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
633
- }
634
-
635
- export function curveSethLend({
636
- comptrollerProxy,
637
- integrationManager,
638
- fundOwner,
639
- curveLiquiditySethAdapter,
640
- outgoingWethAmount,
641
- outgoingSethAmount,
642
- minIncomingLPTokenAmount,
643
- }: {
644
- comptrollerProxy: ComptrollerLib;
645
- integrationManager: IntegrationManager;
646
- fundOwner: SignerWithAddress;
647
- curveLiquiditySethAdapter: CurveLiquiditySethAdapter;
648
- outgoingWethAmount: BigNumberish;
649
- outgoingSethAmount: BigNumberish;
650
- minIncomingLPTokenAmount: BigNumberish;
651
- }) {
652
- const callArgs = callOnIntegrationArgs({
653
- adapter: curveLiquiditySethAdapter,
654
- encodedCallArgs: curveSethLendArgs({
655
- minIncomingLPTokenAmount,
656
- outgoingSethAmount,
657
- outgoingWethAmount,
658
- }),
659
- selector: lendSelector,
660
- });
661
-
662
- return comptrollerProxy
663
- .connect(fundOwner)
664
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
665
- }
666
-
667
- export function curveSethLendAndStake({
668
- comptrollerProxy,
669
- integrationManager,
670
- fundOwner,
671
- curveLiquiditySethAdapter,
672
- outgoingWethAmount,
673
- outgoingSethAmount,
674
- minIncomingLiquidityGaugeTokenAmount,
675
- }: {
676
- comptrollerProxy: ComptrollerLib;
677
- integrationManager: IntegrationManager;
678
- fundOwner: SignerWithAddress;
679
- curveLiquiditySethAdapter: CurveLiquiditySethAdapter;
680
- outgoingWethAmount: BigNumberish;
681
- outgoingSethAmount: BigNumberish;
682
- minIncomingLiquidityGaugeTokenAmount: BigNumberish;
683
- }) {
684
- const callArgs = callOnIntegrationArgs({
685
- adapter: curveLiquiditySethAdapter,
686
- encodedCallArgs: curveSethLendAndStakeArgs({
687
- minIncomingLiquidityGaugeTokenAmount,
688
- outgoingSethAmount,
689
- outgoingWethAmount,
690
- }),
691
- selector: lendAndStakeSelector,
692
- });
693
-
694
- return comptrollerProxy
695
- .connect(fundOwner)
696
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
697
- }
698
-
699
- export function curveSethRedeem({
700
- comptrollerProxy,
701
- integrationManager,
702
- fundOwner,
703
- curveLiquiditySethAdapter,
704
- outgoingLPTokenAmount,
705
- minIncomingWethAmount,
706
- minIncomingSethAmount,
707
- receiveSingleAsset,
708
- }: {
709
- comptrollerProxy: ComptrollerLib;
710
- integrationManager: IntegrationManager;
711
- fundOwner: SignerWithAddress;
712
- curveLiquiditySethAdapter: CurveLiquiditySethAdapter;
713
- outgoingLPTokenAmount: BigNumberish;
714
- minIncomingWethAmount: BigNumberish;
715
- minIncomingSethAmount: BigNumberish;
716
- receiveSingleAsset: boolean;
717
- }) {
718
- const callArgs = callOnIntegrationArgs({
719
- adapter: curveLiquiditySethAdapter,
720
- encodedCallArgs: curveSethRedeemArgs({
721
- minIncomingSethAmount,
722
- minIncomingWethAmount,
723
- outgoingLPTokenAmount,
724
- receiveSingleAsset,
725
- }),
726
- selector: redeemSelector,
727
- });
728
-
729
- return comptrollerProxy
730
- .connect(fundOwner)
731
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
732
- }
733
-
734
- export function curveSethStake({
735
- comptrollerProxy,
736
- integrationManager,
737
- fundOwner,
738
- curveLiquiditySethAdapter,
739
- outgoingLPTokenAmount,
740
- }: {
741
- comptrollerProxy: ComptrollerLib;
742
- integrationManager: IntegrationManager;
743
- fundOwner: SignerWithAddress;
744
- curveLiquiditySethAdapter: CurveLiquiditySethAdapter;
745
- outgoingLPTokenAmount: BigNumberish;
746
- }) {
747
- const callArgs = callOnIntegrationArgs({
748
- adapter: curveLiquiditySethAdapter,
749
- encodedCallArgs: curveSethStakeArgs({
750
- outgoingLPTokenAmount,
751
- }),
752
- selector: stakeSelector,
753
- });
754
-
755
- return comptrollerProxy
756
- .connect(fundOwner)
757
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
758
- }
759
-
760
- export function curveSethUnstakeAndRedeem({
761
- comptrollerProxy,
762
- integrationManager,
763
- fundOwner,
764
- curveLiquiditySethAdapter,
765
- outgoingLiquidityGaugeTokenAmount,
766
- minIncomingWethAmount,
767
- minIncomingSethAmount,
768
- receiveSingleAsset,
769
- }: {
770
- comptrollerProxy: ComptrollerLib;
771
- integrationManager: IntegrationManager;
772
- fundOwner: SignerWithAddress;
773
- curveLiquiditySethAdapter: CurveLiquiditySethAdapter;
774
- outgoingLiquidityGaugeTokenAmount: BigNumberish;
775
- minIncomingWethAmount: BigNumberish;
776
- minIncomingSethAmount: BigNumberish;
777
- receiveSingleAsset: boolean;
778
- }) {
779
- const callArgs = callOnIntegrationArgs({
780
- adapter: curveLiquiditySethAdapter,
781
- encodedCallArgs: curveSethUnstakeAndRedeemArgs({
782
- minIncomingSethAmount,
783
- minIncomingWethAmount,
784
- outgoingLiquidityGaugeTokenAmount,
785
- receiveSingleAsset,
786
- }),
787
- selector: unstakeAndRedeemSelector,
788
- });
789
-
790
- return comptrollerProxy
791
- .connect(fundOwner)
792
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
793
- }
794
-
795
- export function curveSethUnstake({
796
- comptrollerProxy,
797
- integrationManager,
798
- fundOwner,
799
- curveLiquiditySethAdapter,
800
- outgoingLiquidityGaugeTokenAmount,
801
- }: {
802
- comptrollerProxy: ComptrollerLib;
803
- integrationManager: IntegrationManager;
804
- fundOwner: SignerWithAddress;
805
- curveLiquiditySethAdapter: CurveLiquiditySethAdapter;
806
- outgoingLiquidityGaugeTokenAmount: BigNumberish;
807
- }) {
808
- const callArgs = callOnIntegrationArgs({
809
- adapter: curveLiquiditySethAdapter,
810
- encodedCallArgs: curveSethUnstakeArgs({
811
- outgoingLiquidityGaugeTokenAmount,
812
- }),
813
- selector: unstakeSelector,
814
- });
815
-
816
- return comptrollerProxy
817
- .connect(fundOwner)
818
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
819
- }
820
-
821
- // stETH pool
822
-
823
- export function curveStethClaimRewards({
824
- comptrollerProxy,
825
- integrationManager,
826
- fundOwner,
827
- curveLiquidityStethAdapter,
828
- }: {
829
- comptrollerProxy: ComptrollerLib;
830
- integrationManager: IntegrationManager;
831
- fundOwner: SignerWithAddress;
832
- curveLiquidityStethAdapter: CurveLiquidityStethAdapter;
833
- }) {
834
- const callArgs = callOnIntegrationArgs({
835
- adapter: curveLiquidityStethAdapter,
836
- encodedCallArgs: constants.HashZero,
837
- selector: claimRewardsSelector,
838
- });
839
-
840
- return comptrollerProxy
841
- .connect(fundOwner)
842
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
843
- }
844
-
845
- export function curveStethLend({
846
- comptrollerProxy,
847
- integrationManager,
848
- fundOwner,
849
- curveLiquidityStethAdapter,
850
- outgoingWethAmount,
851
- outgoingStethAmount,
852
- minIncomingLPTokenAmount,
853
- }: {
854
- comptrollerProxy: ComptrollerLib;
855
- integrationManager: IntegrationManager;
856
- fundOwner: SignerWithAddress;
857
- curveLiquidityStethAdapter: CurveLiquidityStethAdapter;
858
- outgoingWethAmount: BigNumberish;
859
- outgoingStethAmount: BigNumberish;
860
- minIncomingLPTokenAmount: BigNumberish;
861
- }) {
862
- const callArgs = callOnIntegrationArgs({
863
- adapter: curveLiquidityStethAdapter,
864
- encodedCallArgs: curveStethLendArgs({
865
- minIncomingLPTokenAmount,
866
- outgoingStethAmount,
867
- outgoingWethAmount,
868
- }),
869
- selector: lendSelector,
870
- });
871
-
872
- return comptrollerProxy
873
- .connect(fundOwner)
874
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
875
- }
876
-
877
- export function curveStethLendAndStake({
878
- comptrollerProxy,
879
- integrationManager,
880
- fundOwner,
881
- curveLiquidityStethAdapter,
882
- outgoingWethAmount,
883
- outgoingStethAmount,
884
- minIncomingLiquidityGaugeTokenAmount,
885
- }: {
886
- comptrollerProxy: ComptrollerLib;
887
- integrationManager: IntegrationManager;
888
- fundOwner: SignerWithAddress;
889
- curveLiquidityStethAdapter: CurveLiquidityStethAdapter;
890
- outgoingWethAmount: BigNumberish;
891
- outgoingStethAmount: BigNumberish;
892
- minIncomingLiquidityGaugeTokenAmount: BigNumberish;
893
- }) {
894
- const callArgs = callOnIntegrationArgs({
895
- adapter: curveLiquidityStethAdapter,
896
- encodedCallArgs: curveStethLendAndStakeArgs({
897
- minIncomingLiquidityGaugeTokenAmount,
898
- outgoingStethAmount,
899
- outgoingWethAmount,
900
- }),
901
- selector: lendAndStakeSelector,
902
- });
903
-
904
- return comptrollerProxy
905
- .connect(fundOwner)
906
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
907
- }
908
-
909
- export function curveStethRedeem({
910
- comptrollerProxy,
911
- integrationManager,
912
- fundOwner,
913
- curveLiquidityStethAdapter,
914
- outgoingLPTokenAmount,
915
- minIncomingWethAmount,
916
- minIncomingStethAmount,
917
- receiveSingleAsset,
918
- }: {
919
- comptrollerProxy: ComptrollerLib;
920
- integrationManager: IntegrationManager;
921
- fundOwner: SignerWithAddress;
922
- curveLiquidityStethAdapter: CurveLiquidityStethAdapter;
923
- outgoingLPTokenAmount: BigNumberish;
924
- minIncomingWethAmount: BigNumberish;
925
- minIncomingStethAmount: BigNumberish;
926
- receiveSingleAsset: boolean;
927
- }) {
928
- const callArgs = callOnIntegrationArgs({
929
- adapter: curveLiquidityStethAdapter,
930
- encodedCallArgs: curveStethRedeemArgs({
931
- minIncomingStethAmount,
932
- minIncomingWethAmount,
933
- outgoingLPTokenAmount,
934
- receiveSingleAsset,
935
- }),
936
- selector: redeemSelector,
937
- });
938
-
939
- return comptrollerProxy
940
- .connect(fundOwner)
941
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
942
- }
943
-
944
- export function curveStethStake({
945
- comptrollerProxy,
946
- integrationManager,
947
- fundOwner,
948
- curveLiquidityStethAdapter,
949
- outgoingLPTokenAmount,
950
- }: {
951
- comptrollerProxy: ComptrollerLib;
952
- integrationManager: IntegrationManager;
953
- fundOwner: SignerWithAddress;
954
- curveLiquidityStethAdapter: CurveLiquidityStethAdapter;
955
- outgoingLPTokenAmount: BigNumberish;
956
- }) {
957
- const callArgs = callOnIntegrationArgs({
958
- adapter: curveLiquidityStethAdapter,
959
- encodedCallArgs: curveStethStakeArgs({
960
- outgoingLPTokenAmount,
961
- }),
962
- selector: stakeSelector,
963
- });
964
-
965
- return comptrollerProxy
966
- .connect(fundOwner)
967
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
968
- }
969
-
970
- export function curveStethUnstakeAndRedeem({
971
- comptrollerProxy,
972
- integrationManager,
973
- fundOwner,
974
- curveLiquidityStethAdapter,
975
- outgoingLiquidityGaugeTokenAmount,
976
- minIncomingWethAmount,
977
- minIncomingStethAmount,
978
- receiveSingleAsset,
979
- }: {
980
- comptrollerProxy: ComptrollerLib;
981
- integrationManager: IntegrationManager;
982
- fundOwner: SignerWithAddress;
983
- curveLiquidityStethAdapter: CurveLiquidityStethAdapter;
984
- outgoingLiquidityGaugeTokenAmount: BigNumberish;
985
- minIncomingWethAmount: BigNumberish;
986
- minIncomingStethAmount: BigNumberish;
987
- receiveSingleAsset: boolean;
988
- }) {
989
- const callArgs = callOnIntegrationArgs({
990
- adapter: curveLiquidityStethAdapter,
991
- encodedCallArgs: curveStethUnstakeAndRedeemArgs({
992
- minIncomingStethAmount,
993
- minIncomingWethAmount,
994
- outgoingLiquidityGaugeTokenAmount,
995
- receiveSingleAsset,
996
- }),
997
- selector: unstakeAndRedeemSelector,
998
- });
999
-
1000
- return comptrollerProxy
1001
- .connect(fundOwner)
1002
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
1003
- }
1004
-
1005
- export function curveStethUnstake({
1006
- comptrollerProxy,
1007
- integrationManager,
1008
- fundOwner,
1009
- curveLiquidityStethAdapter,
1010
- outgoingLiquidityGaugeTokenAmount,
1011
- }: {
1012
- comptrollerProxy: ComptrollerLib;
1013
- integrationManager: IntegrationManager;
1014
- fundOwner: SignerWithAddress;
1015
- curveLiquidityStethAdapter: CurveLiquidityStethAdapter;
1016
- outgoingLiquidityGaugeTokenAmount: BigNumberish;
1017
- }) {
1018
- const callArgs = callOnIntegrationArgs({
1019
- adapter: curveLiquidityStethAdapter,
1020
- encodedCallArgs: curveStethUnstakeArgs({
1021
- outgoingLiquidityGaugeTokenAmount,
1022
- }),
1023
- selector: unstakeSelector,
1024
- });
1025
-
1026
- return comptrollerProxy
1027
- .connect(fundOwner)
1028
- .callOnExtension(integrationManager, IntegrationManagerActionId.CallOnIntegration, callArgs);
1029
- }
@@ -4,7 +4,6 @@ export * from './curve';
4
4
  export * from './idle';
5
5
  export * from './mock';
6
6
  export * from './olympusV2';
7
- export * from './paraSwapV4';
8
7
  export * from './paraSwapV5';
9
8
  export * from './poolTogetherV4';
10
9
  export * from './synthetix';