@enzymefinance/testutils 4.0.1 → 4.0.4

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.d.ts CHANGED
@@ -5,7 +5,7 @@ import { SignerWithAddress, EthereumTestnetProvider } from '@enzymefinance/hardh
5
5
  import * as ethers from 'ethers';
6
6
  import { utils, BigNumberish, BigNumber, Signer, BytesLike } from 'ethers';
7
7
  import * as _enzymefinance_protocol from '@enzymefinance/protocol';
8
- import { AaveAdapter, AaveDebtPositionLib, AaveDebtPositionParser, AavePriceFeed, AddressListRegistry, AllowedAdapterIncomingAssetsPolicy, AllowedAdaptersPolicy, AllowedAssetsForRedemptionPolicy, AllowedDepositRecipientsPolicy, AllowedExternalPositionTypesPolicy, AllowedSharesTransferRecipientsPolicy, CompoundAdapter, CompoundDebtPositionLib, CompoundDebtPositionParser, CompoundPriceFeed, ComptrollerLib, ConvexCurveLpStakingAdapter, ConvexCurveLpStakingWrapperFactory, ConvexCurveLpStakingWrapperPriceFeed, ConvexVotingPositionLib, ConvexVotingPositionParser, CumulativeSlippageTolerancePolicy, CurveExchangeAdapter, CurveLiquidityAdapter, CurvePriceFeed, DepositWrapper, Dispatcher, EntranceRateBurnFee, EntranceRateDirectFee, ExitRateBurnFee, ExitRateDirectFee, ExternalPositionFactory, ExternalPositionManager, FeeManager, FundDeployer, FundValueCalculator, FundValueCalculatorRouter, FundValueCalculatorUsdWrapper, FuseAdapter, FusePriceFeed, GasRelayPaymasterFactory, GlobalConfigLib, IdleAdapter, IdlePriceFeed, IntegrationManager, LidoStethPriceFeed, LiquityDebtPositionLib, LiquityDebtPositionParser, ManagementFee, MapleLiquidityPositionLib, MapleLiquidityPositionParser, MinAssetBalancesPostRedemptionPolicy, MinMaxInvestmentPolicy, OlympusV2Adapter, OnlyRemoveDustExternalPositionPolicy, OnlyUntrackDustOrPricelessAssetsPolicy, ParaSwapV5Adapter, PerformanceFee, PolicyManager, PoolTogetherV4Adapter, PoolTogetherV4PriceFeed, ProtocolFeeReserveLib, ProtocolFeeTracker, RevertingPriceFeed, SharesSplitterFactory, SynthetixAdapter, UniswapV2ExchangeAdapter, UniswapV2LiquidityAdapter, UniswapV2PoolPriceFeed, UniswapV3Adapter, UnpermissionedActionsWrapper, UsdEthSimulatedAggregator, ValueInterpreter, VaultLib, YearnVaultV2Adapter, YearnVaultV2PriceFeed, ZeroExV2Adapter, ChainlinkRateAsset, CreateSignedRelayRequestOptions, IGsnRelayHub, StandardToken, MockChainlinkPriceSource, IExternalPositionProxy, VotiumClaimParam, MockGenericExternalPositionParser, MockGenericExternalPositionLib, IFee, ICERC20, CurveRedeemType, MockGenericAdapter, ParaSwapV5Path, SignedZeroExV2Order, IPolicy, SharesSplitterLib, ComptrollerProxy, GasRelayPaymasterLib, AddressListUpdateType } from '@enzymefinance/protocol';
8
+ import { AaveAdapter, AaveDebtPositionLib, AaveDebtPositionParser, AavePriceFeed, AddressListRegistry, AllowedAdapterIncomingAssetsPolicy, AllowedAdaptersPerManagerPolicy, AllowedAdaptersPolicy, AllowedAssetsForRedemptionPolicy, AllowedDepositRecipientsPolicy, AllowedExternalPositionTypesPolicy, AllowedSharesTransferRecipientsPolicy, CompoundAdapter, CompoundDebtPositionLib, CompoundDebtPositionParser, CompoundPriceFeed, ComptrollerLib, ConvexCurveLpStakingAdapter, ConvexCurveLpStakingWrapperFactory, ConvexCurveLpStakingWrapperPriceFeed, ConvexVotingPositionLib, ConvexVotingPositionParser, CumulativeSlippageTolerancePolicy, CurveExchangeAdapter, CurveLiquidityAdapter, CurvePriceFeed, DepositWrapper, Dispatcher, EntranceRateBurnFee, EntranceRateDirectFee, ExitRateBurnFee, ExitRateDirectFee, ExternalPositionFactory, ExternalPositionManager, FeeManager, FundDeployer, FundValueCalculator, FundValueCalculatorRouter, FundValueCalculatorUsdWrapper, FuseAdapter, FusePriceFeed, GasRelayPaymasterFactory, GlobalConfigLib, IdleAdapter, IdlePriceFeed, IntegrationManager, LidoStethPriceFeed, LiquityDebtPositionLib, LiquityDebtPositionParser, ManagementFee, ManualValueOracleFactory, MapleLiquidityPositionLib, MapleLiquidityPositionParser, MinAssetBalancesPostRedemptionPolicy, MinMaxInvestmentPolicy, OlympusV2Adapter, OnlyRemoveDustExternalPositionPolicy, OnlyUntrackDustOrPricelessAssetsPolicy, ParaSwapV5Adapter, PerformanceFee, PolicyManager, PoolTogetherV4Adapter, PoolTogetherV4PriceFeed, ProtocolFeeReserveLib, ProtocolFeeTracker, RevertingPriceFeed, SharesSplitterFactory, SynthetixAdapter, UintListRegistry, UniswapV2ExchangeAdapter, UniswapV2LiquidityAdapter, UniswapV2PoolPriceFeed, UniswapV3Adapter, UnpermissionedActionsWrapper, UsdEthSimulatedAggregator, ValueInterpreter, VaultLib, YearnVaultV2Adapter, YearnVaultV2PriceFeed, ZeroExV2Adapter, ChainlinkRateAsset, CreateSignedRelayRequestOptions, IGsnRelayHub, StandardToken, MockChainlinkPriceSource, IExternalPositionProxy, VotiumClaimParam, MockGenericExternalPositionParser, MockGenericExternalPositionLib, IFee, ICERC20, CurveRedeemType, MockGenericAdapter, ParaSwapV5Path, SignedZeroExV2Order, IPolicy, ManualValueOracleLib, SharesSplitterLib, ComptrollerProxy, GasRelayPaymasterLib, AddressListUpdateType } from '@enzymefinance/protocol';
9
9
  import { MerkleTree } from 'merkletreejs';
10
10
 
11
11
  declare function impersonateContractSigner({ contractAddress, ethSeeder, provider, }: {
@@ -34,6 +34,7 @@ declare function deployProtocolFixture(): Promise<{
34
34
  readonly aavePriceFeed: AavePriceFeed;
35
35
  readonly addressListRegistry: AddressListRegistry;
36
36
  readonly allowedAdapterIncomingAssetsPolicy: AllowedAdapterIncomingAssetsPolicy;
37
+ readonly allowedAdaptersPerManagerPolicy: AllowedAdaptersPerManagerPolicy;
37
38
  readonly allowedAdaptersPolicy: AllowedAdaptersPolicy;
38
39
  readonly allowedAssetsForRedemptionPolicy: AllowedAssetsForRedemptionPolicy;
39
40
  readonly allowedDepositRecipientsPolicy: AllowedDepositRecipientsPolicy;
@@ -78,6 +79,7 @@ declare function deployProtocolFixture(): Promise<{
78
79
  readonly liquityDebtPositionLib: LiquityDebtPositionLib;
79
80
  readonly liquityDebtPositionParser: LiquityDebtPositionParser;
80
81
  readonly managementFee: ManagementFee;
82
+ readonly manualValueOracleFactory: ManualValueOracleFactory;
81
83
  readonly mapleLiquidityPositionLib: MapleLiquidityPositionLib;
82
84
  readonly mapleLiquidityPositionParser: MapleLiquidityPositionParser;
83
85
  readonly minAssetBalancesPostRedemptionPolicy: MinAssetBalancesPostRedemptionPolicy;
@@ -96,6 +98,7 @@ declare function deployProtocolFixture(): Promise<{
96
98
  readonly revertingPriceFeed: RevertingPriceFeed;
97
99
  readonly sharesSplitterFactory: SharesSplitterFactory;
98
100
  readonly synthetixAdapter: SynthetixAdapter;
101
+ readonly uintListRegistry: UintListRegistry;
99
102
  readonly uniswapV2ExchangeAdapter: UniswapV2ExchangeAdapter;
100
103
  readonly uniswapV2LiquidityAdapter: UniswapV2LiquidityAdapter;
101
104
  readonly uniswapV2PoolPriceFeed: UniswapV2PoolPriceFeed;
@@ -538,11 +541,11 @@ declare function convexVotingPositionWithdraw({ comptrollerProxy, externalPositi
538
541
  }): Promise<_enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: ethers.BytesLike], void, ComptrollerLib>>>;
539
542
 
540
543
  interface ILiquityTroveManager extends Contract<ILiquityTroveManager> {
541
- getBorrowingFee: Call<(_LUSDDebt: BigNumberish) => BigNumberish>;
544
+ getBorrowingFee: Call<(_LUSDDebt: BigNumberish) => BigNumber>;
542
545
  }
543
546
  declare const ILiquityTroveManager: _enzymefinance_ethers.ContractFactory<ILiquityTroveManager, never>;
544
547
  interface ILiquityHintHelper extends Contract<ILiquityHintHelper> {
545
- getApproxHint: Call<(_cr: BigNumberish, _numTrials: BigNumberish, _inputRandomSeed: BigNumberish) => [hintAddress_: AddressLike, diff_: BigNumberish, latestRandomSeed_: BigNumberish]>;
548
+ getApproxHint: Call<(_cr: BigNumberish, _numTrials: BigNumberish, _inputRandomSeed: BigNumberish) => [hintAddress_: AddressLike, diff_: BigNumber, latestRandomSeed_: BigNumber]>;
546
549
  }
547
550
  declare const ILiquityHintHelper: _enzymefinance_ethers.ContractFactory<ILiquityHintHelper, never>;
548
551
  interface ILiquitySortedTroves extends Contract<ILiquitySortedTroves> {
@@ -557,31 +560,36 @@ declare function createLiquityDebtPosition({ signer, comptrollerProxy, externalP
557
560
  externalPositionProxy: _enzymefinance_protocol.IExternalPositionProxy;
558
561
  receipt: _enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: utils.BytesLike], void, ComptrollerLib>>;
559
562
  }>;
560
- declare function liquityCalcHints({ collateralAmount, lusdAmount, numTrials, liquitySortedTroves, liquityHintHelper, inputRandomSeed, }: {
563
+ declare function liquityCalcHints({ collateralAmount, debtAmount, // Total debt, inclusive of fees
564
+ numTrials, // See note above for recommended value. This helper uses a static value for testing purposes.
565
+ liquitySortedTroves, liquityHintHelper, inputRandomSeed, }: {
561
566
  collateralAmount: BigNumber;
562
- lusdAmount: BigNumber;
567
+ debtAmount: BigNumber;
563
568
  numTrials?: BigNumber;
564
569
  liquitySortedTroves: ILiquitySortedTroves;
565
570
  liquityHintHelper: ILiquityHintHelper;
566
571
  inputRandomSeed?: BigNumber;
567
- }): Promise<[prevId_: AddressLike, nextId_: AddressLike]>;
568
- declare function liquityDebtPositionAddCollateral({ comptrollerProxy, externalPositionManager, signer, collateralAmount, lowerHint, upperHint, externalPositionProxy, }: {
572
+ }): Promise<{
573
+ lowerHint: AddressLike;
574
+ upperHint: AddressLike;
575
+ }>;
576
+ declare function liquityDebtPositionAddCollateral({ comptrollerProxy, externalPositionManager, signer, collateralAmount, upperHint, lowerHint, externalPositionProxy, }: {
569
577
  comptrollerProxy: ComptrollerLib;
570
578
  externalPositionManager: ExternalPositionManager;
571
579
  signer: SignerWithAddress;
572
580
  collateralAmount: BigNumberish;
573
- lowerHint: AddressLike;
574
581
  upperHint: AddressLike;
582
+ lowerHint: AddressLike;
575
583
  externalPositionProxy: AddressLike;
576
584
  }): Promise<_enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: utils.BytesLike], void, ComptrollerLib>>>;
577
- declare function liquityDebtPositionBorrow({ comptrollerProxy, externalPositionManager, signer, maxFeePercentage, lusdAmount, lowerHint, upperHint, externalPositionProxy, }: {
585
+ declare function liquityDebtPositionBorrow({ comptrollerProxy, externalPositionManager, signer, maxFeePercentage, lusdAmount, upperHint, lowerHint, externalPositionProxy, }: {
578
586
  comptrollerProxy: ComptrollerLib;
579
587
  externalPositionManager: ExternalPositionManager;
580
588
  signer: SignerWithAddress;
581
589
  maxFeePercentage: BigNumberish;
582
590
  lusdAmount: BigNumberish;
583
- lowerHint: AddressLike;
584
591
  upperHint: AddressLike;
592
+ lowerHint: AddressLike;
585
593
  externalPositionProxy: AddressLike;
586
594
  }): Promise<_enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: utils.BytesLike], void, ComptrollerLib>>>;
587
595
  declare function liquityDebtPositionCloseTrove({ comptrollerProxy, externalPositionManager, signer, externalPositionProxy, }: {
@@ -590,33 +598,33 @@ declare function liquityDebtPositionCloseTrove({ comptrollerProxy, externalPosit
590
598
  signer: SignerWithAddress;
591
599
  externalPositionProxy: AddressLike;
592
600
  }): Promise<_enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: utils.BytesLike], void, ComptrollerLib>>>;
593
- declare function liquityDebtPositionOpenTrove({ comptrollerProxy, externalPositionManager, signer, maxFeePercentage, collateralAmount, lusdAmount, lowerHint, upperHint, externalPositionProxy, }: {
601
+ declare function liquityDebtPositionOpenTrove({ comptrollerProxy, externalPositionManager, signer, maxFeePercentage, collateralAmount, lusdAmount, upperHint, lowerHint, externalPositionProxy, }: {
594
602
  comptrollerProxy: ComptrollerLib;
595
603
  externalPositionManager: ExternalPositionManager;
596
604
  signer: SignerWithAddress;
597
605
  maxFeePercentage: BigNumberish;
598
606
  collateralAmount: BigNumberish;
599
607
  lusdAmount: BigNumberish;
600
- lowerHint: AddressLike;
601
608
  upperHint: AddressLike;
609
+ lowerHint: AddressLike;
602
610
  externalPositionProxy: AddressLike;
603
611
  }): Promise<_enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: utils.BytesLike], void, ComptrollerLib>>>;
604
- declare function liquityDebtPositionRemoveCollateral({ comptrollerProxy, externalPositionManager, signer, collateralAmount, lowerHint, upperHint, externalPositionProxy, }: {
612
+ declare function liquityDebtPositionRemoveCollateral({ comptrollerProxy, externalPositionManager, signer, collateralAmount, upperHint, lowerHint, externalPositionProxy, }: {
605
613
  comptrollerProxy: ComptrollerLib;
606
614
  externalPositionManager: ExternalPositionManager;
607
615
  signer: SignerWithAddress;
608
616
  collateralAmount: BigNumberish;
609
- lowerHint: AddressLike;
610
617
  upperHint: AddressLike;
618
+ lowerHint: AddressLike;
611
619
  externalPositionProxy: AddressLike;
612
620
  }): Promise<_enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: utils.BytesLike], void, ComptrollerLib>>>;
613
- declare function liquityDebtPositionRepay({ comptrollerProxy, externalPositionManager, signer, lusdAmount, lowerHint, upperHint, externalPositionProxy, }: {
621
+ declare function liquityDebtPositionRepay({ comptrollerProxy, externalPositionManager, signer, lusdAmount, upperHint, lowerHint, externalPositionProxy, }: {
614
622
  comptrollerProxy: ComptrollerLib;
615
623
  externalPositionManager: ExternalPositionManager;
616
624
  signer: SignerWithAddress;
617
625
  lusdAmount: BigNumberish;
618
- lowerHint: AddressLike;
619
626
  upperHint: AddressLike;
627
+ lowerHint: AddressLike;
620
628
  externalPositionProxy: AddressLike;
621
629
  }): Promise<_enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_extension: AddressLike, _actionId: BigNumberish, _callArgs: utils.BytesLike], void, ComptrollerLib>>>;
622
630
 
@@ -1105,11 +1113,11 @@ declare function mockGenericSwapArgs({ spendAssets, actualSpendAssetAmounts, max
1105
1113
  minIncomingAssetAmounts?: BigNumberish[];
1106
1114
  actualIncomingAssetAmounts?: BigNumberish[];
1107
1115
  }): string;
1108
- declare function mockGenericSwap({ comptrollerProxy, vaultProxy, integrationManager, fundOwner, mockGenericAdapter, selector, spendAssets, actualSpendAssetAmounts, maxSpendAssetAmounts, incomingAssets, actualIncomingAssetAmounts, minIncomingAssetAmounts, seedFund, }: {
1116
+ declare function mockGenericSwap({ comptrollerProxy, vaultProxy, integrationManager, signer, mockGenericAdapter, selector, spendAssets, actualSpendAssetAmounts, maxSpendAssetAmounts, incomingAssets, actualIncomingAssetAmounts, minIncomingAssetAmounts, seedFund, }: {
1109
1117
  comptrollerProxy: ComptrollerLib;
1110
1118
  vaultProxy: VaultLib;
1111
1119
  integrationManager: IntegrationManager;
1112
- fundOwner: SignerWithAddress;
1120
+ signer: SignerWithAddress;
1113
1121
  mockGenericAdapter: MockGenericAdapter;
1114
1122
  selector?: BytesLike;
1115
1123
  spendAssets?: StandardToken[];
@@ -1351,6 +1359,17 @@ interface IVotiumMultiMerkleStash extends Contract<IVotiumMultiMerkleStash> {
1351
1359
  }
1352
1360
  declare const IVotiumMultiMerkleStash: _enzymefinance_ethers.ContractFactory<IVotiumMultiMerkleStash, never>;
1353
1361
 
1362
+ declare function deployManualValueOracle({ signer, manualValueOracleFactory, owner, updater, description, }: {
1363
+ signer: SignerWithAddress;
1364
+ manualValueOracleFactory: ManualValueOracleFactory;
1365
+ owner: AddressLike;
1366
+ updater: AddressLike;
1367
+ description?: string;
1368
+ }): Promise<{
1369
+ proxy: ManualValueOracleLib;
1370
+ receipt: _enzymefinance_ethers.ContractReceipt<_enzymefinance_ethers.SendFunction<[_owner: AddressLike, _updater: AddressLike, _description: string], string, ManualValueOracleFactory>>;
1371
+ }>;
1372
+
1354
1373
  declare function deploySharesSplitter({ signer, sharesSplitterFactory, splitUsers, splitPercentages, }: {
1355
1374
  signer: SignerWithAddress;
1356
1375
  sharesSplitterFactory: SharesSplitterFactory;
@@ -1545,4 +1564,4 @@ declare function unlockWhale(token: Whale): Promise<SignerWithAddress>;
1545
1564
  declare function unlockAllWhales(): Promise<WhaleSigners<"link" | "mln" | "weth" | "bat" | "bnb" | "bnt" | "busd" | "comp" | "crv" | "dai" | "grt" | "knc" | "ldo" | "lusd" | "mana" | "ohm" | "rep" | "ren" | "susd" | "sohm" | "uni" | "usdc" | "usdt" | "zrx" | "ausdc" | "ausdt" | "ccomp" | "cdai" | "ceth" | "cuni" | "cusdc" | "fdai7" | "feth7" | "fdai8" | "ftribe8" | "ptUsdc" | "seth" | "sxag" | "sxau" | "cvx" | "lidoSteth" | "ust" | "stecrv">>;
1546
1565
  declare function unlockWhales<T extends Whale>(...tokens: T[]): Promise<WhaleSigners<T>>;
1547
1566
 
1548
- export { BuySharesParams, CreateMigrationRequestParams, CreateNewFundParams, CreateReconfigurationRequestParams, CurveLiquidityGaugeV2, CurveMinter, CurveRegistry, CurveSwaps, DeploymentConfig, ICompoundComptroller, IConvexBaseRewardPool, IConvexCrvDepositor, IConvexCvxLocker, IConvexVlCvxExtraRewardDistribution, ILiquityHintHelper, ILiquitySortedTroves, ILiquityTroveManager, ISnapshotDelegateRegistry, IUniswapV3NonFungibleTokenManager, IVotiumMultiMerkleStash, InitialInvestmentParams, ProtocolDeployment, RedeemSharesForSpecificAssetsParams, RedeemSharesInKindParams, RelayTransactionOptions, UniswapV2Factory, UniswapV3FeeAmount, Whale, WhaleSigners, aaveDebtPositionAddCollateral, aaveDebtPositionBorrow, aaveDebtPositionClaimRewards, aaveDebtPositionRemoveCollateral, aaveDebtPositionRepayBorrow, aaveLend, aaveRedeem, addNewAssetsToFund, addTrackedAssetsToVault, assertCompoundLend, assertCompoundRedeem, assertDidRelay, assertDidRelaySuccessfully, assertDidRelayWithCharge, assertDidRelayWithError, assertEvent, assertNoEvent, assertPaymasterDidReject, assertPaymasterDidRejectForReason, buyShares, buySharesFunction, calcMlnValueAndBurnAmountForSharesBuyback, callOnExtension, callOnExternalPosition, compoundClaim, compoundDebtPositionAddCollateral, compoundDebtPositionBorrow, compoundDebtPositionClaimComp, compoundDebtPositionRemoveCollateral, compoundDebtPositionRepayBorrow, compoundLend, compoundRedeem, convexVotingPositionClaimRewards, convexVotingPositionDelegate, convexVotingPositionLock, convexVotingPositionRelock, convexVotingPositionWithdraw, createAaveDebtPosition, createCompoundDebtPosition, createComptrollerProxy, createConvexVotingPosition, createExternalPosition, createFundDeployer, createLiquityDebtPosition, createMapleLiquidityPosition, createMigrationRequest, createMockExternalPosition, createNewFund, createReconfigurationRequest, createTheGraphDelegationPosition, createUniswapV3LiquidityPosition, createVaultProxy, curveClaimRewards, curveLend, curveLendAndStake, curveRedeem, curveStake, curveTakeOrder, curveUnstake, curveUnstakeAndRedeem, deployProtocolFixture, deploySharesSplitter, generateFeeManagerConfigWithMockFees, generateMerkleTreeForContractProof, generateMockFees, generateMockPolicies, generatePolicyManagerConfigWithMockPolicies, getAssetBalances, getAssetUnit, getNamedSigner, getUnnamedSigners, idleClaimRewards, idleLend, idleRedeem, impersonateContractSigner, impersonateSigner, liquityCalcHints, liquityDebtPositionAddCollateral, liquityDebtPositionBorrow, liquityDebtPositionCloseTrove, liquityDebtPositionOpenTrove, liquityDebtPositionRemoveCollateral, liquityDebtPositionRepay, mapleLiquidityPositionClaimInterest, mapleLiquidityPositionClaimRewards, mapleLiquidityPositionIntendToRedeem, mapleLiquidityPositionLend, mapleLiquidityPositionLendAndStake, mapleLiquidityPositionRedeem, mapleLiquidityPositionStake, mapleLiquidityPositionUnstake, mapleLiquidityPositionUnstakeAndRedeem, mockExternalPositionAddDebtAssets, mockExternalPositionAddManagedAssets, mockExternalPositionRemoveDebtAssets, mockExternalPositionRemoveManagedAssets, mockGenericRemoveOnlySelector, mockGenericSwap, mockGenericSwapASelector, mockGenericSwapArgs, mockGenericSwapBSelector, mockGenericSwapDirectFromVaultSelector, mockGenericSwapViaApprovalSelector, olympusV2Stake, olympusV2Unstake, paraSwapV5GenerateDummyPaths, paraSwapV5TakeOrder, poolTogetherV4ClaimRewards, poolTogetherV4Lend, poolTogetherV4Redeem, reactivateExternalPosition, redeemSharesForSpecificAssets, redeemSharesInKind, relayTransaction, removeExternalPosition, removeTrackedAssetsFromVault, sendEthBySelfDestruct, setupGasRelayerPaymaster, synthetixAssignExchangeDelegate, synthetixRedeem, synthetixTakeOrder, theGraphDelegationPositionDelegate, theGraphDelegationPositionUndelegate, theGraphDelegationPositionWithdraw, transactionTimestamp, uniswapV2Lend, uniswapV2Redeem, uniswapV2TakeOrder, uniswapV3LiquidityPositionAddLiquidity, uniswapV3LiquidityPositionCollect, uniswapV3LiquidityPositionGetMaxTick, uniswapV3LiquidityPositionGetMinTick, uniswapV3LiquidityPositionMint, uniswapV3LiquidityPositionPurge, uniswapV3LiquidityPositionRemoveLiquidity, uniswapV3OrderTokenPair, uniswapV3TakeOrder, unlockAllWhales, unlockWhale, unlockWhales, updateChainlinkAggregator, vaultCallCreateNewList, vaultCallCurveMinterMint, vaultCallCurveMinterMintMany, vaultCallCurveMinterToggleApproveMint, vaultCallStartAssetBypassTimelock, yearnVaultV2Lend, yearnVaultV2Redeem, zeroExV2TakeOrder };
1567
+ export { BuySharesParams, CreateMigrationRequestParams, CreateNewFundParams, CreateReconfigurationRequestParams, CurveLiquidityGaugeV2, CurveMinter, CurveRegistry, CurveSwaps, DeploymentConfig, ICompoundComptroller, IConvexBaseRewardPool, IConvexCrvDepositor, IConvexCvxLocker, IConvexVlCvxExtraRewardDistribution, ILiquityHintHelper, ILiquitySortedTroves, ILiquityTroveManager, ISnapshotDelegateRegistry, IUniswapV3NonFungibleTokenManager, IVotiumMultiMerkleStash, InitialInvestmentParams, ProtocolDeployment, RedeemSharesForSpecificAssetsParams, RedeemSharesInKindParams, RelayTransactionOptions, UniswapV2Factory, UniswapV3FeeAmount, Whale, WhaleSigners, aaveDebtPositionAddCollateral, aaveDebtPositionBorrow, aaveDebtPositionClaimRewards, aaveDebtPositionRemoveCollateral, aaveDebtPositionRepayBorrow, aaveLend, aaveRedeem, addNewAssetsToFund, addTrackedAssetsToVault, assertCompoundLend, assertCompoundRedeem, assertDidRelay, assertDidRelaySuccessfully, assertDidRelayWithCharge, assertDidRelayWithError, assertEvent, assertNoEvent, assertPaymasterDidReject, assertPaymasterDidRejectForReason, buyShares, buySharesFunction, calcMlnValueAndBurnAmountForSharesBuyback, callOnExtension, callOnExternalPosition, compoundClaim, compoundDebtPositionAddCollateral, compoundDebtPositionBorrow, compoundDebtPositionClaimComp, compoundDebtPositionRemoveCollateral, compoundDebtPositionRepayBorrow, compoundLend, compoundRedeem, convexVotingPositionClaimRewards, convexVotingPositionDelegate, convexVotingPositionLock, convexVotingPositionRelock, convexVotingPositionWithdraw, createAaveDebtPosition, createCompoundDebtPosition, createComptrollerProxy, createConvexVotingPosition, createExternalPosition, createFundDeployer, createLiquityDebtPosition, createMapleLiquidityPosition, createMigrationRequest, createMockExternalPosition, createNewFund, createReconfigurationRequest, createTheGraphDelegationPosition, createUniswapV3LiquidityPosition, createVaultProxy, curveClaimRewards, curveLend, curveLendAndStake, curveRedeem, curveStake, curveTakeOrder, curveUnstake, curveUnstakeAndRedeem, deployManualValueOracle, deployProtocolFixture, deploySharesSplitter, generateFeeManagerConfigWithMockFees, generateMerkleTreeForContractProof, generateMockFees, generateMockPolicies, generatePolicyManagerConfigWithMockPolicies, getAssetBalances, getAssetUnit, getNamedSigner, getUnnamedSigners, idleClaimRewards, idleLend, idleRedeem, impersonateContractSigner, impersonateSigner, liquityCalcHints, liquityDebtPositionAddCollateral, liquityDebtPositionBorrow, liquityDebtPositionCloseTrove, liquityDebtPositionOpenTrove, liquityDebtPositionRemoveCollateral, liquityDebtPositionRepay, mapleLiquidityPositionClaimInterest, mapleLiquidityPositionClaimRewards, mapleLiquidityPositionIntendToRedeem, mapleLiquidityPositionLend, mapleLiquidityPositionLendAndStake, mapleLiquidityPositionRedeem, mapleLiquidityPositionStake, mapleLiquidityPositionUnstake, mapleLiquidityPositionUnstakeAndRedeem, mockExternalPositionAddDebtAssets, mockExternalPositionAddManagedAssets, mockExternalPositionRemoveDebtAssets, mockExternalPositionRemoveManagedAssets, mockGenericRemoveOnlySelector, mockGenericSwap, mockGenericSwapASelector, mockGenericSwapArgs, mockGenericSwapBSelector, mockGenericSwapDirectFromVaultSelector, mockGenericSwapViaApprovalSelector, olympusV2Stake, olympusV2Unstake, paraSwapV5GenerateDummyPaths, paraSwapV5TakeOrder, poolTogetherV4ClaimRewards, poolTogetherV4Lend, poolTogetherV4Redeem, reactivateExternalPosition, redeemSharesForSpecificAssets, redeemSharesInKind, relayTransaction, removeExternalPosition, removeTrackedAssetsFromVault, sendEthBySelfDestruct, setupGasRelayerPaymaster, synthetixAssignExchangeDelegate, synthetixRedeem, synthetixTakeOrder, theGraphDelegationPositionDelegate, theGraphDelegationPositionUndelegate, theGraphDelegationPositionWithdraw, transactionTimestamp, uniswapV2Lend, uniswapV2Redeem, uniswapV2TakeOrder, uniswapV3LiquidityPositionAddLiquidity, uniswapV3LiquidityPositionCollect, uniswapV3LiquidityPositionGetMaxTick, uniswapV3LiquidityPositionGetMinTick, uniswapV3LiquidityPositionMint, uniswapV3LiquidityPositionPurge, uniswapV3LiquidityPositionRemoveLiquidity, uniswapV3OrderTokenPair, uniswapV3TakeOrder, unlockAllWhales, unlockWhale, unlockWhales, updateChainlinkAggregator, vaultCallCreateNewList, vaultCallCurveMinterMint, vaultCallCurveMinterMintMany, vaultCallCurveMinterToggleApproveMint, vaultCallStartAssetBypassTimelock, yearnVaultV2Lend, yearnVaultV2Redeem, zeroExV2TakeOrder };
package/dist/index.js CHANGED
@@ -172,6 +172,9 @@ function assertNoEvent(receipt, event) {
172
172
 
173
173
 
174
174
 
175
+
176
+
177
+
175
178
 
176
179
 
177
180
 
@@ -199,6 +202,7 @@ async function deployProtocolFixture() {
199
202
  aavePriceFeed: new (0, _protocol.AavePriceFeed)(fixture.AavePriceFeed.address, deployer),
200
203
  addressListRegistry: new (0, _protocol.AddressListRegistry)(fixture.AddressListRegistry.address, deployer),
201
204
  allowedAdapterIncomingAssetsPolicy: new (0, _protocol.AllowedAdapterIncomingAssetsPolicy)(fixture.AllowedAdapterIncomingAssetsPolicy.address, deployer),
205
+ allowedAdaptersPerManagerPolicy: new (0, _protocol.AllowedAdaptersPerManagerPolicy)(fixture.AllowedAdaptersPerManagerPolicy.address, deployer),
202
206
  allowedAdaptersPolicy: new (0, _protocol.AllowedAdaptersPolicy)(fixture.AllowedAdaptersPolicy.address, deployer),
203
207
  allowedAssetsForRedemptionPolicy: new (0, _protocol.AllowedAssetsForRedemptionPolicy)(fixture.AllowedAssetsForRedemptionPolicy.address, deployer),
204
208
  allowedDepositRecipientsPolicy: new (0, _protocol.AllowedDepositRecipientsPolicy)(fixture.AllowedDepositRecipientsPolicy.address, deployer),
@@ -243,6 +247,7 @@ async function deployProtocolFixture() {
243
247
  liquityDebtPositionLib: new (0, _protocol.LiquityDebtPositionLib)(fixture.LiquityDebtPositionLib.address, deployer),
244
248
  liquityDebtPositionParser: new (0, _protocol.LiquityDebtPositionParser)(fixture.LiquityDebtPositionParser.address, deployer),
245
249
  managementFee: new (0, _protocol.ManagementFee)(fixture.ManagementFee.address, deployer),
250
+ manualValueOracleFactory: new (0, _protocol.ManualValueOracleFactory)(fixture.ManualValueOracleFactory.address, deployer),
246
251
  mapleLiquidityPositionLib: new (0, _protocol.MapleLiquidityPositionLib)(fixture.MapleLiquidityPositionLib.address, deployer),
247
252
  mapleLiquidityPositionParser: new (0, _protocol.MapleLiquidityPositionParser)(fixture.MapleLiquidityPositionParser.address, deployer),
248
253
  minAssetBalancesPostRedemptionPolicy: new (0, _protocol.MinAssetBalancesPostRedemptionPolicy)(fixture.MinAssetBalancesPostRedemptionPolicy.address, deployer),
@@ -261,6 +266,7 @@ async function deployProtocolFixture() {
261
266
  revertingPriceFeed: new (0, _protocol.RevertingPriceFeed)(fixture.RevertingPriceFeed.address, deployer),
262
267
  sharesSplitterFactory: new (0, _protocol.SharesSplitterFactory)(fixture.SharesSplitterFactory.address, deployer),
263
268
  synthetixAdapter: new (0, _protocol.SynthetixAdapter)(fixture.SynthetixAdapter.address, deployer),
269
+ uintListRegistry: new (0, _protocol.UintListRegistry)(fixture.UintListRegistry.address, deployer),
264
270
  uniswapV2ExchangeAdapter: new (0, _protocol.UniswapV2ExchangeAdapter)(fixture.UniswapV2ExchangeAdapter.address, deployer),
265
271
  uniswapV2LiquidityAdapter: new (0, _protocol.UniswapV2LiquidityAdapter)(fixture.UniswapV2LiquidityAdapter.address, deployer),
266
272
  uniswapV2PoolPriceFeed: new (0, _protocol.UniswapV2PoolPriceFeed)(fixture.UniswapV2PoolPriceFeed.address, deployer),
@@ -938,24 +944,24 @@ async function createLiquityDebtPosition({
938
944
  }
939
945
  async function liquityCalcHints({
940
946
  collateralAmount,
941
- lusdAmount,
942
- numTrials = _ethers3.BigNumber.from("15"),
947
+ debtAmount,
948
+ numTrials = _ethers3.BigNumber.from("100"),
943
949
  liquitySortedTroves,
944
950
  liquityHintHelper,
945
951
  inputRandomSeed = _ethers3.BigNumber.from("4")
946
952
  }) {
947
- const nicr = collateralAmount.mul(_ethers3.utils.parseEther("100")).div(lusdAmount);
953
+ const nicr = collateralAmount.mul(_ethers3.utils.parseEther("100")).div(debtAmount);
948
954
  const approxHint = await liquityHintHelper.getApproxHint.args(nicr, numTrials, inputRandomSeed).call();
949
- const hints = await liquitySortedTroves.findInsertPosition.args(nicr, approxHint[0], approxHint[0]).call();
950
- return hints;
955
+ const [upperHint, lowerHint] = await liquitySortedTroves.findInsertPosition.args(nicr, approxHint[0], approxHint[0]).call();
956
+ return { lowerHint, upperHint };
951
957
  }
952
958
  async function liquityDebtPositionAddCollateral({
953
959
  comptrollerProxy,
954
960
  externalPositionManager,
955
961
  signer,
956
962
  collateralAmount,
957
- lowerHint,
958
963
  upperHint,
964
+ lowerHint,
959
965
  externalPositionProxy
960
966
  }) {
961
967
  const actionArgs = _protocol.liquityDebtPositionAddCollateralArgs.call(void 0, {
@@ -978,8 +984,8 @@ async function liquityDebtPositionBorrow({
978
984
  signer,
979
985
  maxFeePercentage,
980
986
  lusdAmount,
981
- lowerHint,
982
987
  upperHint,
988
+ lowerHint,
983
989
  externalPositionProxy
984
990
  }) {
985
991
  const actionArgs = _protocol.liquityDebtPositionBorrowArgs.call(void 0, {
@@ -1020,8 +1026,8 @@ async function liquityDebtPositionOpenTrove({
1020
1026
  maxFeePercentage,
1021
1027
  collateralAmount,
1022
1028
  lusdAmount,
1023
- lowerHint,
1024
1029
  upperHint,
1030
+ lowerHint,
1025
1031
  externalPositionProxy
1026
1032
  }) {
1027
1033
  const actionArgs = _protocol.liquityDebtPositionOpenTroveArgs.call(void 0, {
@@ -1045,8 +1051,8 @@ async function liquityDebtPositionRemoveCollateral({
1045
1051
  externalPositionManager,
1046
1052
  signer,
1047
1053
  collateralAmount,
1048
- lowerHint,
1049
1054
  upperHint,
1055
+ lowerHint,
1050
1056
  externalPositionProxy
1051
1057
  }) {
1052
1058
  const actionArgs = _protocol.liquityDebtPositionRemoveCollateralArgs.call(void 0, {
@@ -1068,8 +1074,8 @@ async function liquityDebtPositionRepay({
1068
1074
  externalPositionManager,
1069
1075
  signer,
1070
1076
  lusdAmount,
1071
- lowerHint,
1072
1077
  upperHint,
1078
+ lowerHint,
1073
1079
  externalPositionProxy
1074
1080
  }) {
1075
1081
  const actionArgs = _protocol.liquityDebtPositionRepayBorrowArgs.call(void 0, {
@@ -2261,7 +2267,7 @@ async function mockGenericSwap({
2261
2267
  comptrollerProxy,
2262
2268
  vaultProxy,
2263
2269
  integrationManager,
2264
- fundOwner,
2270
+ signer,
2265
2271
  mockGenericAdapter,
2266
2272
  selector = mockGenericSwapASelector,
2267
2273
  spendAssets = [],
@@ -2290,7 +2296,7 @@ async function mockGenericSwap({
2290
2296
  encodedCallArgs: swapArgs,
2291
2297
  selector
2292
2298
  });
2293
- const swapTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, _protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
2299
+ const swapTx = comptrollerProxy.connect(signer).callOnExtension(integrationManager, _protocol.IntegrationManagerActionId.CallOnIntegration, callArgs);
2294
2300
  await expect(swapTx).resolves.toBeReceipt();
2295
2301
  return swapTx;
2296
2302
  }
@@ -2866,7 +2872,25 @@ var IVotiumMultiMerkleStash = _ethers.contract.call(void 0, )`
2866
2872
  function updateMerkleRoot(address, bytes32)
2867
2873
  `;
2868
2874
 
2869
- // src/scaffolding/peripheral/shares-splitter.ts
2875
+ // src/scaffolding/persistent/manual-value-oracle.ts
2876
+
2877
+ async function deployManualValueOracle({
2878
+ signer,
2879
+ manualValueOracleFactory,
2880
+ owner,
2881
+ updater,
2882
+ description = ""
2883
+ }) {
2884
+ const receipt = await manualValueOracleFactory.connect(signer).deploy(owner, updater, description);
2885
+ const proxyDeployedArgs = assertEvent(receipt, "ProxyDeployed", {
2886
+ caller: signer,
2887
+ proxy: expect.any(String)
2888
+ });
2889
+ const proxy = new (0, _protocol.ManualValueOracleLib)(proxyDeployedArgs.proxy, provider);
2890
+ return { proxy, receipt };
2891
+ }
2892
+
2893
+ // src/scaffolding/persistent/shares-splitter.ts
2870
2894
 
2871
2895
  async function deploySharesSplitter({
2872
2896
  signer,
@@ -3349,4 +3373,5 @@ async function unlockWhales(...tokens) {
3349
3373
 
3350
3374
 
3351
3375
 
3352
- exports.CurveLiquidityGaugeV2 = CurveLiquidityGaugeV2; exports.CurveMinter = CurveMinter; exports.CurveRegistry = CurveRegistry; exports.CurveSwaps = CurveSwaps; exports.ICompoundComptroller = ICompoundComptroller; exports.IConvexBaseRewardPool = IConvexBaseRewardPool; exports.IConvexCrvDepositor = IConvexCrvDepositor; exports.IConvexCvxLocker = IConvexCvxLocker; exports.IConvexVlCvxExtraRewardDistribution = IConvexVlCvxExtraRewardDistribution; exports.ILiquityHintHelper = ILiquityHintHelper; exports.ILiquitySortedTroves = ILiquitySortedTroves; exports.ILiquityTroveManager = ILiquityTroveManager; exports.ISnapshotDelegateRegistry = ISnapshotDelegateRegistry; exports.IUniswapV3NonFungibleTokenManager = IUniswapV3NonFungibleTokenManager; exports.IVotiumMultiMerkleStash = IVotiumMultiMerkleStash; exports.UniswapV2Factory = UniswapV2Factory; exports.UniswapV3FeeAmount = UniswapV3FeeAmount; exports.aaveDebtPositionAddCollateral = aaveDebtPositionAddCollateral; exports.aaveDebtPositionBorrow = aaveDebtPositionBorrow; exports.aaveDebtPositionClaimRewards = aaveDebtPositionClaimRewards; exports.aaveDebtPositionRemoveCollateral = aaveDebtPositionRemoveCollateral; exports.aaveDebtPositionRepayBorrow = aaveDebtPositionRepayBorrow; exports.aaveLend = aaveLend; exports.aaveRedeem = aaveRedeem; exports.addNewAssetsToFund = addNewAssetsToFund; exports.addTrackedAssetsToVault = addTrackedAssetsToVault; exports.assertCompoundLend = assertCompoundLend; exports.assertCompoundRedeem = assertCompoundRedeem; exports.assertDidRelay = assertDidRelay; exports.assertDidRelaySuccessfully = assertDidRelaySuccessfully; exports.assertDidRelayWithCharge = assertDidRelayWithCharge; exports.assertDidRelayWithError = assertDidRelayWithError; exports.assertEvent = assertEvent; exports.assertNoEvent = assertNoEvent; exports.assertPaymasterDidReject = assertPaymasterDidReject; exports.assertPaymasterDidRejectForReason = assertPaymasterDidRejectForReason; exports.buyShares = buyShares; exports.buySharesFunction = buySharesFunction; exports.calcMlnValueAndBurnAmountForSharesBuyback = calcMlnValueAndBurnAmountForSharesBuyback; exports.callOnExtension = callOnExtension; exports.callOnExternalPosition = callOnExternalPosition; exports.compoundClaim = compoundClaim; exports.compoundDebtPositionAddCollateral = compoundDebtPositionAddCollateral; exports.compoundDebtPositionBorrow = compoundDebtPositionBorrow; exports.compoundDebtPositionClaimComp = compoundDebtPositionClaimComp; exports.compoundDebtPositionRemoveCollateral = compoundDebtPositionRemoveCollateral; exports.compoundDebtPositionRepayBorrow = compoundDebtPositionRepayBorrow; exports.compoundLend = compoundLend; exports.compoundRedeem = compoundRedeem; exports.convexVotingPositionClaimRewards = convexVotingPositionClaimRewards; exports.convexVotingPositionDelegate = convexVotingPositionDelegate; exports.convexVotingPositionLock = convexVotingPositionLock; exports.convexVotingPositionRelock = convexVotingPositionRelock; exports.convexVotingPositionWithdraw = convexVotingPositionWithdraw; exports.createAaveDebtPosition = createAaveDebtPosition; exports.createCompoundDebtPosition = createCompoundDebtPosition; exports.createComptrollerProxy = createComptrollerProxy; exports.createConvexVotingPosition = createConvexVotingPosition; exports.createExternalPosition = createExternalPosition; exports.createFundDeployer = createFundDeployer; exports.createLiquityDebtPosition = createLiquityDebtPosition; exports.createMapleLiquidityPosition = createMapleLiquidityPosition; exports.createMigrationRequest = createMigrationRequest; exports.createMockExternalPosition = createMockExternalPosition; exports.createNewFund = createNewFund; exports.createReconfigurationRequest = createReconfigurationRequest; exports.createTheGraphDelegationPosition = createTheGraphDelegationPosition; exports.createUniswapV3LiquidityPosition = createUniswapV3LiquidityPosition; exports.createVaultProxy = createVaultProxy; exports.curveClaimRewards = curveClaimRewards; exports.curveLend = curveLend; exports.curveLendAndStake = curveLendAndStake; exports.curveRedeem = curveRedeem; exports.curveStake = curveStake; exports.curveTakeOrder = curveTakeOrder; exports.curveUnstake = curveUnstake; exports.curveUnstakeAndRedeem = curveUnstakeAndRedeem; exports.deployProtocolFixture = deployProtocolFixture; exports.deploySharesSplitter = deploySharesSplitter; exports.generateFeeManagerConfigWithMockFees = generateFeeManagerConfigWithMockFees; exports.generateMerkleTreeForContractProof = generateMerkleTreeForContractProof; exports.generateMockFees = generateMockFees; exports.generateMockPolicies = generateMockPolicies; exports.generatePolicyManagerConfigWithMockPolicies = generatePolicyManagerConfigWithMockPolicies; exports.getAssetBalances = getAssetBalances; exports.getAssetUnit = getAssetUnit; exports.getNamedSigner = getNamedSigner; exports.getUnnamedSigners = getUnnamedSigners; exports.idleClaimRewards = idleClaimRewards; exports.idleLend = idleLend; exports.idleRedeem = idleRedeem; exports.impersonateContractSigner = impersonateContractSigner; exports.impersonateSigner = impersonateSigner; exports.liquityCalcHints = liquityCalcHints; exports.liquityDebtPositionAddCollateral = liquityDebtPositionAddCollateral; exports.liquityDebtPositionBorrow = liquityDebtPositionBorrow; exports.liquityDebtPositionCloseTrove = liquityDebtPositionCloseTrove; exports.liquityDebtPositionOpenTrove = liquityDebtPositionOpenTrove; exports.liquityDebtPositionRemoveCollateral = liquityDebtPositionRemoveCollateral; exports.liquityDebtPositionRepay = liquityDebtPositionRepay; exports.mapleLiquidityPositionClaimInterest = mapleLiquidityPositionClaimInterest; exports.mapleLiquidityPositionClaimRewards = mapleLiquidityPositionClaimRewards; exports.mapleLiquidityPositionIntendToRedeem = mapleLiquidityPositionIntendToRedeem; exports.mapleLiquidityPositionLend = mapleLiquidityPositionLend; exports.mapleLiquidityPositionLendAndStake = mapleLiquidityPositionLendAndStake; exports.mapleLiquidityPositionRedeem = mapleLiquidityPositionRedeem; exports.mapleLiquidityPositionStake = mapleLiquidityPositionStake; exports.mapleLiquidityPositionUnstake = mapleLiquidityPositionUnstake; exports.mapleLiquidityPositionUnstakeAndRedeem = mapleLiquidityPositionUnstakeAndRedeem; exports.mockExternalPositionAddDebtAssets = mockExternalPositionAddDebtAssets; exports.mockExternalPositionAddManagedAssets = mockExternalPositionAddManagedAssets; exports.mockExternalPositionRemoveDebtAssets = mockExternalPositionRemoveDebtAssets; exports.mockExternalPositionRemoveManagedAssets = mockExternalPositionRemoveManagedAssets; exports.mockGenericRemoveOnlySelector = mockGenericRemoveOnlySelector; exports.mockGenericSwap = mockGenericSwap; exports.mockGenericSwapASelector = mockGenericSwapASelector; exports.mockGenericSwapArgs = mockGenericSwapArgs; exports.mockGenericSwapBSelector = mockGenericSwapBSelector; exports.mockGenericSwapDirectFromVaultSelector = mockGenericSwapDirectFromVaultSelector; exports.mockGenericSwapViaApprovalSelector = mockGenericSwapViaApprovalSelector; exports.olympusV2Stake = olympusV2Stake; exports.olympusV2Unstake = olympusV2Unstake; exports.paraSwapV5GenerateDummyPaths = paraSwapV5GenerateDummyPaths; exports.paraSwapV5TakeOrder = paraSwapV5TakeOrder; exports.poolTogetherV4ClaimRewards = poolTogetherV4ClaimRewards; exports.poolTogetherV4Lend = poolTogetherV4Lend; exports.poolTogetherV4Redeem = poolTogetherV4Redeem; exports.reactivateExternalPosition = reactivateExternalPosition; exports.redeemSharesForSpecificAssets = redeemSharesForSpecificAssets; exports.redeemSharesInKind = redeemSharesInKind; exports.relayTransaction = relayTransaction; exports.removeExternalPosition = removeExternalPosition; exports.removeTrackedAssetsFromVault = removeTrackedAssetsFromVault; exports.sendEthBySelfDestruct = sendEthBySelfDestruct; exports.setupGasRelayerPaymaster = setupGasRelayerPaymaster; exports.synthetixAssignExchangeDelegate = synthetixAssignExchangeDelegate; exports.synthetixRedeem = synthetixRedeem; exports.synthetixTakeOrder = synthetixTakeOrder; exports.theGraphDelegationPositionDelegate = theGraphDelegationPositionDelegate; exports.theGraphDelegationPositionUndelegate = theGraphDelegationPositionUndelegate; exports.theGraphDelegationPositionWithdraw = theGraphDelegationPositionWithdraw; exports.transactionTimestamp = transactionTimestamp; exports.uniswapV2Lend = uniswapV2Lend; exports.uniswapV2Redeem = uniswapV2Redeem; exports.uniswapV2TakeOrder = uniswapV2TakeOrder; exports.uniswapV3LiquidityPositionAddLiquidity = uniswapV3LiquidityPositionAddLiquidity; exports.uniswapV3LiquidityPositionCollect = uniswapV3LiquidityPositionCollect; exports.uniswapV3LiquidityPositionGetMaxTick = uniswapV3LiquidityPositionGetMaxTick; exports.uniswapV3LiquidityPositionGetMinTick = uniswapV3LiquidityPositionGetMinTick; exports.uniswapV3LiquidityPositionMint = uniswapV3LiquidityPositionMint; exports.uniswapV3LiquidityPositionPurge = uniswapV3LiquidityPositionPurge; exports.uniswapV3LiquidityPositionRemoveLiquidity = uniswapV3LiquidityPositionRemoveLiquidity; exports.uniswapV3OrderTokenPair = uniswapV3OrderTokenPair; exports.uniswapV3TakeOrder = uniswapV3TakeOrder; exports.unlockAllWhales = unlockAllWhales; exports.unlockWhale = unlockWhale; exports.unlockWhales = unlockWhales; exports.updateChainlinkAggregator = updateChainlinkAggregator; exports.vaultCallCreateNewList = vaultCallCreateNewList; exports.vaultCallCurveMinterMint = vaultCallCurveMinterMint; exports.vaultCallCurveMinterMintMany = vaultCallCurveMinterMintMany; exports.vaultCallCurveMinterToggleApproveMint = vaultCallCurveMinterToggleApproveMint; exports.vaultCallStartAssetBypassTimelock = vaultCallStartAssetBypassTimelock; exports.yearnVaultV2Lend = yearnVaultV2Lend; exports.yearnVaultV2Redeem = yearnVaultV2Redeem; exports.zeroExV2TakeOrder = zeroExV2TakeOrder;
3376
+
3377
+ exports.CurveLiquidityGaugeV2 = CurveLiquidityGaugeV2; exports.CurveMinter = CurveMinter; exports.CurveRegistry = CurveRegistry; exports.CurveSwaps = CurveSwaps; exports.ICompoundComptroller = ICompoundComptroller; exports.IConvexBaseRewardPool = IConvexBaseRewardPool; exports.IConvexCrvDepositor = IConvexCrvDepositor; exports.IConvexCvxLocker = IConvexCvxLocker; exports.IConvexVlCvxExtraRewardDistribution = IConvexVlCvxExtraRewardDistribution; exports.ILiquityHintHelper = ILiquityHintHelper; exports.ILiquitySortedTroves = ILiquitySortedTroves; exports.ILiquityTroveManager = ILiquityTroveManager; exports.ISnapshotDelegateRegistry = ISnapshotDelegateRegistry; exports.IUniswapV3NonFungibleTokenManager = IUniswapV3NonFungibleTokenManager; exports.IVotiumMultiMerkleStash = IVotiumMultiMerkleStash; exports.UniswapV2Factory = UniswapV2Factory; exports.UniswapV3FeeAmount = UniswapV3FeeAmount; exports.aaveDebtPositionAddCollateral = aaveDebtPositionAddCollateral; exports.aaveDebtPositionBorrow = aaveDebtPositionBorrow; exports.aaveDebtPositionClaimRewards = aaveDebtPositionClaimRewards; exports.aaveDebtPositionRemoveCollateral = aaveDebtPositionRemoveCollateral; exports.aaveDebtPositionRepayBorrow = aaveDebtPositionRepayBorrow; exports.aaveLend = aaveLend; exports.aaveRedeem = aaveRedeem; exports.addNewAssetsToFund = addNewAssetsToFund; exports.addTrackedAssetsToVault = addTrackedAssetsToVault; exports.assertCompoundLend = assertCompoundLend; exports.assertCompoundRedeem = assertCompoundRedeem; exports.assertDidRelay = assertDidRelay; exports.assertDidRelaySuccessfully = assertDidRelaySuccessfully; exports.assertDidRelayWithCharge = assertDidRelayWithCharge; exports.assertDidRelayWithError = assertDidRelayWithError; exports.assertEvent = assertEvent; exports.assertNoEvent = assertNoEvent; exports.assertPaymasterDidReject = assertPaymasterDidReject; exports.assertPaymasterDidRejectForReason = assertPaymasterDidRejectForReason; exports.buyShares = buyShares; exports.buySharesFunction = buySharesFunction; exports.calcMlnValueAndBurnAmountForSharesBuyback = calcMlnValueAndBurnAmountForSharesBuyback; exports.callOnExtension = callOnExtension; exports.callOnExternalPosition = callOnExternalPosition; exports.compoundClaim = compoundClaim; exports.compoundDebtPositionAddCollateral = compoundDebtPositionAddCollateral; exports.compoundDebtPositionBorrow = compoundDebtPositionBorrow; exports.compoundDebtPositionClaimComp = compoundDebtPositionClaimComp; exports.compoundDebtPositionRemoveCollateral = compoundDebtPositionRemoveCollateral; exports.compoundDebtPositionRepayBorrow = compoundDebtPositionRepayBorrow; exports.compoundLend = compoundLend; exports.compoundRedeem = compoundRedeem; exports.convexVotingPositionClaimRewards = convexVotingPositionClaimRewards; exports.convexVotingPositionDelegate = convexVotingPositionDelegate; exports.convexVotingPositionLock = convexVotingPositionLock; exports.convexVotingPositionRelock = convexVotingPositionRelock; exports.convexVotingPositionWithdraw = convexVotingPositionWithdraw; exports.createAaveDebtPosition = createAaveDebtPosition; exports.createCompoundDebtPosition = createCompoundDebtPosition; exports.createComptrollerProxy = createComptrollerProxy; exports.createConvexVotingPosition = createConvexVotingPosition; exports.createExternalPosition = createExternalPosition; exports.createFundDeployer = createFundDeployer; exports.createLiquityDebtPosition = createLiquityDebtPosition; exports.createMapleLiquidityPosition = createMapleLiquidityPosition; exports.createMigrationRequest = createMigrationRequest; exports.createMockExternalPosition = createMockExternalPosition; exports.createNewFund = createNewFund; exports.createReconfigurationRequest = createReconfigurationRequest; exports.createTheGraphDelegationPosition = createTheGraphDelegationPosition; exports.createUniswapV3LiquidityPosition = createUniswapV3LiquidityPosition; exports.createVaultProxy = createVaultProxy; exports.curveClaimRewards = curveClaimRewards; exports.curveLend = curveLend; exports.curveLendAndStake = curveLendAndStake; exports.curveRedeem = curveRedeem; exports.curveStake = curveStake; exports.curveTakeOrder = curveTakeOrder; exports.curveUnstake = curveUnstake; exports.curveUnstakeAndRedeem = curveUnstakeAndRedeem; exports.deployManualValueOracle = deployManualValueOracle; exports.deployProtocolFixture = deployProtocolFixture; exports.deploySharesSplitter = deploySharesSplitter; exports.generateFeeManagerConfigWithMockFees = generateFeeManagerConfigWithMockFees; exports.generateMerkleTreeForContractProof = generateMerkleTreeForContractProof; exports.generateMockFees = generateMockFees; exports.generateMockPolicies = generateMockPolicies; exports.generatePolicyManagerConfigWithMockPolicies = generatePolicyManagerConfigWithMockPolicies; exports.getAssetBalances = getAssetBalances; exports.getAssetUnit = getAssetUnit; exports.getNamedSigner = getNamedSigner; exports.getUnnamedSigners = getUnnamedSigners; exports.idleClaimRewards = idleClaimRewards; exports.idleLend = idleLend; exports.idleRedeem = idleRedeem; exports.impersonateContractSigner = impersonateContractSigner; exports.impersonateSigner = impersonateSigner; exports.liquityCalcHints = liquityCalcHints; exports.liquityDebtPositionAddCollateral = liquityDebtPositionAddCollateral; exports.liquityDebtPositionBorrow = liquityDebtPositionBorrow; exports.liquityDebtPositionCloseTrove = liquityDebtPositionCloseTrove; exports.liquityDebtPositionOpenTrove = liquityDebtPositionOpenTrove; exports.liquityDebtPositionRemoveCollateral = liquityDebtPositionRemoveCollateral; exports.liquityDebtPositionRepay = liquityDebtPositionRepay; exports.mapleLiquidityPositionClaimInterest = mapleLiquidityPositionClaimInterest; exports.mapleLiquidityPositionClaimRewards = mapleLiquidityPositionClaimRewards; exports.mapleLiquidityPositionIntendToRedeem = mapleLiquidityPositionIntendToRedeem; exports.mapleLiquidityPositionLend = mapleLiquidityPositionLend; exports.mapleLiquidityPositionLendAndStake = mapleLiquidityPositionLendAndStake; exports.mapleLiquidityPositionRedeem = mapleLiquidityPositionRedeem; exports.mapleLiquidityPositionStake = mapleLiquidityPositionStake; exports.mapleLiquidityPositionUnstake = mapleLiquidityPositionUnstake; exports.mapleLiquidityPositionUnstakeAndRedeem = mapleLiquidityPositionUnstakeAndRedeem; exports.mockExternalPositionAddDebtAssets = mockExternalPositionAddDebtAssets; exports.mockExternalPositionAddManagedAssets = mockExternalPositionAddManagedAssets; exports.mockExternalPositionRemoveDebtAssets = mockExternalPositionRemoveDebtAssets; exports.mockExternalPositionRemoveManagedAssets = mockExternalPositionRemoveManagedAssets; exports.mockGenericRemoveOnlySelector = mockGenericRemoveOnlySelector; exports.mockGenericSwap = mockGenericSwap; exports.mockGenericSwapASelector = mockGenericSwapASelector; exports.mockGenericSwapArgs = mockGenericSwapArgs; exports.mockGenericSwapBSelector = mockGenericSwapBSelector; exports.mockGenericSwapDirectFromVaultSelector = mockGenericSwapDirectFromVaultSelector; exports.mockGenericSwapViaApprovalSelector = mockGenericSwapViaApprovalSelector; exports.olympusV2Stake = olympusV2Stake; exports.olympusV2Unstake = olympusV2Unstake; exports.paraSwapV5GenerateDummyPaths = paraSwapV5GenerateDummyPaths; exports.paraSwapV5TakeOrder = paraSwapV5TakeOrder; exports.poolTogetherV4ClaimRewards = poolTogetherV4ClaimRewards; exports.poolTogetherV4Lend = poolTogetherV4Lend; exports.poolTogetherV4Redeem = poolTogetherV4Redeem; exports.reactivateExternalPosition = reactivateExternalPosition; exports.redeemSharesForSpecificAssets = redeemSharesForSpecificAssets; exports.redeemSharesInKind = redeemSharesInKind; exports.relayTransaction = relayTransaction; exports.removeExternalPosition = removeExternalPosition; exports.removeTrackedAssetsFromVault = removeTrackedAssetsFromVault; exports.sendEthBySelfDestruct = sendEthBySelfDestruct; exports.setupGasRelayerPaymaster = setupGasRelayerPaymaster; exports.synthetixAssignExchangeDelegate = synthetixAssignExchangeDelegate; exports.synthetixRedeem = synthetixRedeem; exports.synthetixTakeOrder = synthetixTakeOrder; exports.theGraphDelegationPositionDelegate = theGraphDelegationPositionDelegate; exports.theGraphDelegationPositionUndelegate = theGraphDelegationPositionUndelegate; exports.theGraphDelegationPositionWithdraw = theGraphDelegationPositionWithdraw; exports.transactionTimestamp = transactionTimestamp; exports.uniswapV2Lend = uniswapV2Lend; exports.uniswapV2Redeem = uniswapV2Redeem; exports.uniswapV2TakeOrder = uniswapV2TakeOrder; exports.uniswapV3LiquidityPositionAddLiquidity = uniswapV3LiquidityPositionAddLiquidity; exports.uniswapV3LiquidityPositionCollect = uniswapV3LiquidityPositionCollect; exports.uniswapV3LiquidityPositionGetMaxTick = uniswapV3LiquidityPositionGetMaxTick; exports.uniswapV3LiquidityPositionGetMinTick = uniswapV3LiquidityPositionGetMinTick; exports.uniswapV3LiquidityPositionMint = uniswapV3LiquidityPositionMint; exports.uniswapV3LiquidityPositionPurge = uniswapV3LiquidityPositionPurge; exports.uniswapV3LiquidityPositionRemoveLiquidity = uniswapV3LiquidityPositionRemoveLiquidity; exports.uniswapV3OrderTokenPair = uniswapV3OrderTokenPair; exports.uniswapV3TakeOrder = uniswapV3TakeOrder; exports.unlockAllWhales = unlockAllWhales; exports.unlockWhale = unlockWhale; exports.unlockWhales = unlockWhales; exports.updateChainlinkAggregator = updateChainlinkAggregator; exports.vaultCallCreateNewList = vaultCallCreateNewList; exports.vaultCallCurveMinterMint = vaultCallCurveMinterMint; exports.vaultCallCurveMinterMintMany = vaultCallCurveMinterMintMany; exports.vaultCallCurveMinterToggleApproveMint = vaultCallCurveMinterToggleApproveMint; exports.vaultCallStartAssetBypassTimelock = vaultCallStartAssetBypassTimelock; exports.yearnVaultV2Lend = yearnVaultV2Lend; exports.yearnVaultV2Redeem = yearnVaultV2Redeem; exports.zeroExV2TakeOrder = zeroExV2TakeOrder;
package/dist/index.mjs CHANGED
@@ -104,6 +104,7 @@ import {
104
104
  AavePriceFeed,
105
105
  AddressListRegistry,
106
106
  AllowedAdapterIncomingAssetsPolicy,
107
+ AllowedAdaptersPerManagerPolicy,
107
108
  AllowedAdaptersPolicy,
108
109
  AllowedAssetsForRedemptionPolicy,
109
110
  AllowedDepositRecipientsPolicy,
@@ -147,6 +148,7 @@ import {
147
148
  LiquityDebtPositionLib,
148
149
  LiquityDebtPositionParser,
149
150
  ManagementFee,
151
+ ManualValueOracleFactory,
150
152
  MapleLiquidityPositionLib,
151
153
  MapleLiquidityPositionParser,
152
154
  MinAssetBalancesPostRedemptionPolicy,
@@ -164,6 +166,7 @@ import {
164
166
  RevertingPriceFeed,
165
167
  SharesSplitterFactory,
166
168
  SynthetixAdapter,
169
+ UintListRegistry,
167
170
  UniswapV2ExchangeAdapter,
168
171
  UniswapV2LiquidityAdapter,
169
172
  UniswapV2PoolPriceFeed,
@@ -199,6 +202,7 @@ async function deployProtocolFixture() {
199
202
  aavePriceFeed: new AavePriceFeed(fixture.AavePriceFeed.address, deployer),
200
203
  addressListRegistry: new AddressListRegistry(fixture.AddressListRegistry.address, deployer),
201
204
  allowedAdapterIncomingAssetsPolicy: new AllowedAdapterIncomingAssetsPolicy(fixture.AllowedAdapterIncomingAssetsPolicy.address, deployer),
205
+ allowedAdaptersPerManagerPolicy: new AllowedAdaptersPerManagerPolicy(fixture.AllowedAdaptersPerManagerPolicy.address, deployer),
202
206
  allowedAdaptersPolicy: new AllowedAdaptersPolicy(fixture.AllowedAdaptersPolicy.address, deployer),
203
207
  allowedAssetsForRedemptionPolicy: new AllowedAssetsForRedemptionPolicy(fixture.AllowedAssetsForRedemptionPolicy.address, deployer),
204
208
  allowedDepositRecipientsPolicy: new AllowedDepositRecipientsPolicy(fixture.AllowedDepositRecipientsPolicy.address, deployer),
@@ -243,6 +247,7 @@ async function deployProtocolFixture() {
243
247
  liquityDebtPositionLib: new LiquityDebtPositionLib(fixture.LiquityDebtPositionLib.address, deployer),
244
248
  liquityDebtPositionParser: new LiquityDebtPositionParser(fixture.LiquityDebtPositionParser.address, deployer),
245
249
  managementFee: new ManagementFee(fixture.ManagementFee.address, deployer),
250
+ manualValueOracleFactory: new ManualValueOracleFactory(fixture.ManualValueOracleFactory.address, deployer),
246
251
  mapleLiquidityPositionLib: new MapleLiquidityPositionLib(fixture.MapleLiquidityPositionLib.address, deployer),
247
252
  mapleLiquidityPositionParser: new MapleLiquidityPositionParser(fixture.MapleLiquidityPositionParser.address, deployer),
248
253
  minAssetBalancesPostRedemptionPolicy: new MinAssetBalancesPostRedemptionPolicy(fixture.MinAssetBalancesPostRedemptionPolicy.address, deployer),
@@ -261,6 +266,7 @@ async function deployProtocolFixture() {
261
266
  revertingPriceFeed: new RevertingPriceFeed(fixture.RevertingPriceFeed.address, deployer),
262
267
  sharesSplitterFactory: new SharesSplitterFactory(fixture.SharesSplitterFactory.address, deployer),
263
268
  synthetixAdapter: new SynthetixAdapter(fixture.SynthetixAdapter.address, deployer),
269
+ uintListRegistry: new UintListRegistry(fixture.UintListRegistry.address, deployer),
264
270
  uniswapV2ExchangeAdapter: new UniswapV2ExchangeAdapter(fixture.UniswapV2ExchangeAdapter.address, deployer),
265
271
  uniswapV2LiquidityAdapter: new UniswapV2LiquidityAdapter(fixture.UniswapV2LiquidityAdapter.address, deployer),
266
272
  uniswapV2PoolPriceFeed: new UniswapV2PoolPriceFeed(fixture.UniswapV2PoolPriceFeed.address, deployer),
@@ -938,24 +944,24 @@ async function createLiquityDebtPosition({
938
944
  }
939
945
  async function liquityCalcHints({
940
946
  collateralAmount,
941
- lusdAmount,
942
- numTrials = BigNumber4.from("15"),
947
+ debtAmount,
948
+ numTrials = BigNumber4.from("100"),
943
949
  liquitySortedTroves,
944
950
  liquityHintHelper,
945
951
  inputRandomSeed = BigNumber4.from("4")
946
952
  }) {
947
- const nicr = collateralAmount.mul(utils4.parseEther("100")).div(lusdAmount);
953
+ const nicr = collateralAmount.mul(utils4.parseEther("100")).div(debtAmount);
948
954
  const approxHint = await liquityHintHelper.getApproxHint.args(nicr, numTrials, inputRandomSeed).call();
949
- const hints = await liquitySortedTroves.findInsertPosition.args(nicr, approxHint[0], approxHint[0]).call();
950
- return hints;
955
+ const [upperHint, lowerHint] = await liquitySortedTroves.findInsertPosition.args(nicr, approxHint[0], approxHint[0]).call();
956
+ return { lowerHint, upperHint };
951
957
  }
952
958
  async function liquityDebtPositionAddCollateral({
953
959
  comptrollerProxy,
954
960
  externalPositionManager,
955
961
  signer,
956
962
  collateralAmount,
957
- lowerHint,
958
963
  upperHint,
964
+ lowerHint,
959
965
  externalPositionProxy
960
966
  }) {
961
967
  const actionArgs = liquityDebtPositionAddCollateralArgs({
@@ -978,8 +984,8 @@ async function liquityDebtPositionBorrow({
978
984
  signer,
979
985
  maxFeePercentage,
980
986
  lusdAmount,
981
- lowerHint,
982
987
  upperHint,
988
+ lowerHint,
983
989
  externalPositionProxy
984
990
  }) {
985
991
  const actionArgs = liquityDebtPositionBorrowArgs({
@@ -1020,8 +1026,8 @@ async function liquityDebtPositionOpenTrove({
1020
1026
  maxFeePercentage,
1021
1027
  collateralAmount,
1022
1028
  lusdAmount,
1023
- lowerHint,
1024
1029
  upperHint,
1030
+ lowerHint,
1025
1031
  externalPositionProxy
1026
1032
  }) {
1027
1033
  const actionArgs = liquityDebtPositionOpenTroveArgs({
@@ -1045,8 +1051,8 @@ async function liquityDebtPositionRemoveCollateral({
1045
1051
  externalPositionManager,
1046
1052
  signer,
1047
1053
  collateralAmount,
1048
- lowerHint,
1049
1054
  upperHint,
1055
+ lowerHint,
1050
1056
  externalPositionProxy
1051
1057
  }) {
1052
1058
  const actionArgs = liquityDebtPositionRemoveCollateralArgs({
@@ -1068,8 +1074,8 @@ async function liquityDebtPositionRepay({
1068
1074
  externalPositionManager,
1069
1075
  signer,
1070
1076
  lusdAmount,
1071
- lowerHint,
1072
1077
  upperHint,
1078
+ lowerHint,
1073
1079
  externalPositionProxy
1074
1080
  }) {
1075
1081
  const actionArgs = liquityDebtPositionRepayBorrowArgs({
@@ -2261,7 +2267,7 @@ async function mockGenericSwap({
2261
2267
  comptrollerProxy,
2262
2268
  vaultProxy,
2263
2269
  integrationManager,
2264
- fundOwner,
2270
+ signer,
2265
2271
  mockGenericAdapter,
2266
2272
  selector = mockGenericSwapASelector,
2267
2273
  spendAssets = [],
@@ -2290,7 +2296,7 @@ async function mockGenericSwap({
2290
2296
  encodedCallArgs: swapArgs,
2291
2297
  selector
2292
2298
  });
2293
- const swapTx = comptrollerProxy.connect(fundOwner).callOnExtension(integrationManager, IntegrationManagerActionId6.CallOnIntegration, callArgs);
2299
+ const swapTx = comptrollerProxy.connect(signer).callOnExtension(integrationManager, IntegrationManagerActionId6.CallOnIntegration, callArgs);
2294
2300
  await expect(swapTx).resolves.toBeReceipt();
2295
2301
  return swapTx;
2296
2302
  }
@@ -2866,7 +2872,25 @@ var IVotiumMultiMerkleStash = contract6()`
2866
2872
  function updateMerkleRoot(address, bytes32)
2867
2873
  `;
2868
2874
 
2869
- // src/scaffolding/peripheral/shares-splitter.ts
2875
+ // src/scaffolding/persistent/manual-value-oracle.ts
2876
+ import { ManualValueOracleLib } from "@enzymefinance/protocol";
2877
+ async function deployManualValueOracle({
2878
+ signer,
2879
+ manualValueOracleFactory,
2880
+ owner,
2881
+ updater,
2882
+ description = ""
2883
+ }) {
2884
+ const receipt = await manualValueOracleFactory.connect(signer).deploy(owner, updater, description);
2885
+ const proxyDeployedArgs = assertEvent(receipt, "ProxyDeployed", {
2886
+ caller: signer,
2887
+ proxy: expect.any(String)
2888
+ });
2889
+ const proxy = new ManualValueOracleLib(proxyDeployedArgs.proxy, provider);
2890
+ return { proxy, receipt };
2891
+ }
2892
+
2893
+ // src/scaffolding/persistent/shares-splitter.ts
2870
2894
  import { SharesSplitterLib } from "@enzymefinance/protocol";
2871
2895
  async function deploySharesSplitter({
2872
2896
  signer,
@@ -3260,6 +3284,7 @@ export {
3260
3284
  curveTakeOrder,
3261
3285
  curveUnstake,
3262
3286
  curveUnstakeAndRedeem,
3287
+ deployManualValueOracle,
3263
3288
  deployProtocolFixture,
3264
3289
  deploySharesSplitter,
3265
3290
  generateFeeManagerConfigWithMockFees,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enzymefinance/testutils",
3
- "version": "4.0.1",
3
+ "version": "4.0.4",
4
4
  "description": "Technology Regulated and Operated Investment Funds",
5
5
  "author": "Enzyme Council DAO <council@enzyme.finance>",
6
6
  "license": "GPL-3.0",
@@ -45,10 +45,10 @@
45
45
  "typecheck": "tsc --noEmit"
46
46
  },
47
47
  "dependencies": {
48
- "@enzymefinance/ethers": "^4.0.1",
49
- "@enzymefinance/hardhat": "^4.0.1",
50
- "@enzymefinance/protocol": "^4.0.1",
51
- "ethers": "^5.6.2",
48
+ "@enzymefinance/ethers": "^4.0.4",
49
+ "@enzymefinance/hardhat": "^4.0.4",
50
+ "@enzymefinance/protocol": "^4.0.4",
51
+ "ethers": "^5.6.8",
52
52
  "merkletreejs": "^0.2.31"
53
53
  },
54
54
  "devDependencies": {