feat: add curve executor with router tests

Took 36 minutes


Took 2 minutes
This commit is contained in:
royvardhan
2025-03-13 00:40:12 +05:30
committed by Diana Carvalho
parent 6c679c0434
commit 7cde5130d6
5 changed files with 214 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
// SPDX-License-Identifier: BUSL-1.1
pragma solidity ^0.8.26;
interface ICurveRouter {
function exchange(
address[11] memory route,
uint256[5][5] memory swapParams,
uint256 amountIn,
uint256 minAmountOut,
address[5] memory pools,
address receiver
) external payable returns (uint256);
function get_dy(
address[] memory route,
uint256[] memory swapParams,
uint256 amountIn,
address[] memory pools
) external view returns (uint256);
}
struct CurveRouterParams {
address[11] route;
uint256[5][5] swapParams;
uint256 amountIn;
uint256 minAmountOut;
address[5] pools;
address receiver;
}